Երբեմն օգտակար է թերթը տող առ տող կարդալ և ընտրողաբար վերցնել դրանից տվյալներ: Ստորև բերված օրինակը ցույց է տալիս, թե ինչպես դա անել:
Հոդվածը ենթադրում է, որ ընթերցողը ցուցադրում է erրագրավորողի ժապավենը և ծանոթ է VBA խմբագրին: Եթե ոչ, խնդրում ենք Google- ի «Excel Developer Tab» կամ «Excel Code Window»:
Հետևյալ օրինակը շահարկում է տվյալները՝ ուսումնասիրելով էլփոստի հասցեների յուրաքանչյուր տող և դրանք միացնելով մեկ հասցեի տողում: Թեև Excel-ն ունի ներկառուցված Transpose ֆունկցիաներ, մենք մտադիր ենք մեր կոդով բացառել որոշ կոնկրետ հասցեատերեր և ավելացնել սահմանազատիչներ:
Մեր դիմումին անհրաժեշտ է միայն մեկ թերթ: Պատճենեք ստորև բերված տեղեկատվությունը A1 բջիջում.
| Էլեկտրոնային փոստի հասցե |
| tcruise@paramount.com |
| julia.R@disney.com |
| Jules.dassin@gaumont.co.fr |
| EnricoFellini@cinecitta.co.it |
| marymontrary@bedlam.org.uk |
Կոդը մեկնարկելու համար ձևաթղթի վրա դրեք կոճակ:
Ենթադրենք, որ կան հարյուրավոր նման նամակներ, այլ ոչ թե ընդամենը հինգ. մենք ուզում ենք յուրաքանչյուրին ուղարկել նույն հաղորդագրությունը և մեր սցենարի նույն պատճենը: Դա անելու մի քանի եղանակ կա, որոնցից ամենաակնառուը՝ VBA կոդից կանչել նամակ ուղարկողին, ինչպիսին է Outlook-ը: Այնուամենայնիվ, այս վարժությունը ծառայում է երկու նպատակի.
- Ցույց տալ, թե ինչպես հեշտությամբ շրջել աշխատանքային թերթիկի միջով;
- Ընդգծեք Excel-ի յուրաքանչյուր տող ուսումնասիրելու ունակությունը և գործեք դրա վրա:
VBA ծածկագիր
VBA կոդը կմիավորի բոլոր հասցեները՝ յուրաքանչյուրից հետո տեղադրելով կիսատ-ստորակետ, այնպես որ դրանք կարող են մեկ անգամ տեղադրվել էլփոստի հասցեատիրոջ դաշտում: Կոդից կիմանաք, որ տողերը ուսումնասիրելուց հետո այն կբացառի ֆրանսիականները։
Տեղադրեք մոդուլ և մուտքագրեք հետևյալը.
Option Explicit
Dim strEmail As String
Dim strAll As String
Sub Main()
strAll = ""
Range("C2") = strAll 'clear previous program results
Sheets("Sheet1").Select
Range("A2").Select
Do While ActiveCell > "" 'loop until row 7
strEmail = ActiveCell
If Right(strEmail, 2) <> "fr" Then 'exclude France
strAll = strAll & strEmail & ";"
End If
Range("A" & ActiveCell.Row + 1).Select 'move on a row in the SAME column
Loop
Range("C2") = strAll
End Sub
Կոդը պահում է ակտիվ բջիջը A սյունակում, միայն տողերն են առաջ շարժվում: Տեղեկություններին անընդմեջ այլ տեղ հղում կատարելու համար մենք կօգտագործենք.
Variable = Activecell.offset(offset rows, offset columns)
Ակտիվ տողում B սյունակից արժեք ստանալու համար, օրինակ, կոդը կարդա Activecell.offset (0, 1). A2-ի արժեքը ստանալու համար, երբ մենք A3-ում ենք, կկարդանք Activecell.offset (-1, 0):
Ձեր կոդը ստուգելու համար կոճակը նշանակեք «Հիմնական» մակրո:
Որոշ Ինտերնետ Ծառայությունների Մատակարարներ, որպես հակասպամ կանխարգելիչ միջոց, կարող են սահմանափակել նամակների քանակը, որոնք կարող եք միանգամից ուղարկել: Եթե օգտվում եք այս մեթոդից, հավանաբար ավելի լավ է ստուգել նրանց հետ հարյուրավոր էլ. նամակներ միանգամից ուղարկելուց առաջ:
Excel-ի ֆայլերի կոռուպցիայի հետ կապված

Հեղինակի ներածություն.
Ֆելիքս Հուքերը տվյալների վերականգման փորձագետ է DataNumen, Inc., որը տվյալների վերականգման տեխնոլոգիաների համաշխարհային առաջատարն է, այդ թվում նորոգում rar կոռուպցիա և sql վերականգնման ծրագրային արտադրանքները: Լրացուցիչ տեղեկությունների համար այցելեք www.datanumen.com
