Ինչպես շրջել ձեր Excel աշխատաթերթը VBA-ով

Կիսվել հիմա ՝

Երբեմն օգտակար է թերթը տող առ տող կարդալ և ընտրողաբար վերցնել դրանից տվյալներ: Ստորև բերված օրինակը ցույց է տալիս, թե ինչպես դա անել:

Հոդվածը ենթադրում է, որ ընթերցողը ցուցադրում է 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-ի ֆայլերի կոռուպցիայի հետ կապված

Excel ֆայլի կոռուպցիաԺամանակ առ ժամանակ մենք հանդիպում ենք աշխատանքային գրքերի վնասման այն աստիճանի, որ Excel-ն ինքը չի կարողանում վերականգնել դրանք: Սա աղետ է Excel-ի օգտատերերի մեծամասնության, այդ թվում՝ մասնագետների համար: Այնուամենայնիվ, եթե ձեռքի տակ ունեք արդյունավետ վերականգնման գործիք, կարող եք վերականգնել... վնասված xlsx ֆայլեր հեշտությամբ և արագ:

Հեղինակի ներածություն.

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

Կիսվել հիմա ՝

Comments փակվում են: