Ako odosielať hromadné e -maily z programu Excel VBA jediným kliknutím v programe Excel

Anonim

Mali ste niekedy potrebu odosielať e -maily z programu Excel VBA na viac e -mailových adries uvedených v liste programu Excel? Chcete sa naučiť odosielať e -maily z Excelu bez otvárania programu Outlook? Tento článok sa zaoberá tým, ako môžete automatizovať aplikáciu Outlook a odosielať viac e -mailov s prílohami z Excelu na jedno kliknutie a zároveň udržať ľudí v kópiách a skrytých kópiách.

Nakoniec si môžete stiahnuť aj súbor a okamžite posielať mužov na stovky ID. Súbor obsahuje makro na odosielanie e -mailov z programu Excel.

Ako odosielať poštu z Excelu?
Na odosielanie pošty z Excelu musíte porozumieť týmto úryvkom VBA.

Dôležité: V aplikácii Outlook musíte mať nakonfigurovaný e -mail.

Stlačením F11 otvorte editor VB.

  • Pridajte odkaz na knižnicu objektov outlook:
      • V ponuke prejdite na položku Nástroje a kliknite na položku Referencie.

    • Nájdite objektovú knižnicu Microsoft 16.0. Verzia môže byť rôzna. V Exceli 2016 je 16.0. Začiarknite. A kliknite na tlačidlo OK.

    • Vytvorte referencie na aplikáciu Outlook a poštu: Teraz, aby sme mali prístup k funkciám programu Microsoft Outlook, musíme vytvoriť jeho objekt.
Dim outApp As Outlook.Application 'Tým sa vytvorí odkaz na objekt outlook. Dim outApp As Outlook.MailItem 'Tým sa vytvorí odkaz na MailItem. 
    • Inicializujte referencie: Vyššie uvedené odkazy je potrebné inicializovať:
Set outApp = New Outlook.Application Set outMail = outApp.CreateItem (0)
    • Odosielanie pošty pomocou objektu outMail: Nasledujúce riadky definujú cieľové ID pošty, kópie, bcc, predmet, telo, prílohu a príkaz na odoslanie.
With outMail .To = "abcd.mail.com" 'Povinné. Tu definujete ID cieľovej pošty … cc = "cc.mail.com" 'voliteľné. ID poštovej kópie, ak chcete … BCC = "bcc.mail.com" 'voliteľné. Skrytá kópia pošty, ak chcete … Subject = subj 'by malo mať. Masáž na tele pošty … Telo = správa je voliteľná. Masáž na tele pošty… Prílohy. Pridajte „C: /exceltip.com \ test.xlsx“ 'voliteľne. Úplne kvalifikovaný názov prílohy … Odoslať 'Povinné, ak chcete odosielať poštu z programu Excel. Ak chcete poštu vidieť v programe Outlook, použite metódu .Display. Ukončiť s 

To je všetko. Je to všetko, čo potrebujete na odosielanie pošty z Excelu pomocou VBA.

Teraz sa pozrieme na príklad, ktorý odosiela poštu na každé ID e -mailu v stĺpci programu Excel osobitne.

Scenár:
Predstavte si, že dostanete list programu Excel, ktorý obsahuje 100 e -mailových adries a na každé e -mailové ID musíte odoslať e -mail osobitne. Nielen to, musíte pripojiť aj položky. Ak to urobíte ručne, bude vám to trvať hodiny. Poďme teda zautomatizovať túto poštovú úlohu v programe Excel VBA.

Tu mám tieto údaje. V stĺpci C s názvom „Odoslať poštu komu“ je niekoľko e -mailových ID. Na každý e -mail v tomto stĺpci musím poslať e -mail.
Na tento účel som vytvoril stĺpce pre Predmet, Masážne telo, CC a BCC.

V poli „Odoslať poštu“ by nemala byť žiadna prázdna bunka. Všetky ostatné stĺpce môžu mať prázdne bunky. Ak chceš
viac e -mailových ID v do potom do tohto stĺpca napíšte tieto e -mailové ID čiarkami. Uistite sa, že sú e -mailové adresy platné.

Ak chcete odosielať prílohy. Do stĺpca prílohy napíšte adresy týchto súborov.

Predmet napíšte do stĺpca Predmet.

Masáž v stĺpci Masážne telo.

Ak chcete niekoho ponechať v kópii, napíšte jeho e -mailovú adresu do stĺpca CC. To isté pre BCC. pre viac e -mailových adries použite čiarku.

Ak chcete teraz odosielať e -maily na každé e -mailové ID v stĺpci, postupujte podľa týchto krokov.

  • Stlačením klávesov Alt+F11 otvorte editor VBA v programe Excel.
  • Pridajte odkaz na objekt outlook podľa vyššie uvedených krokov.
  • V novom module skopírujte nižšie uvedený kód.
'*** Musíte mať v aplikácii Outlook vo svojom systéme nakonfigurovaný e -mail z programu Outlook ***' *** Pridať odkaz na knižnicu objektov outook z odkazov v nástrojoch *** Sub BulkMail () Application.ScreenUpdating = False ThisWorkbook.Activate ' Vytváranie odkazov na objekty aplikácie a položky pošty programu Outlook Dim outApp ako Outlook. Aplikácia Dim outMail ako Outlook.MailItem 'Vytváranie premennej na uchovávanie hodnôt rôznych položiek pošty Dim sendTo, subj, atchmnt, msg, ccTo, bccTo As String Dim lstRow As Long „Moje údaje sú na hárku„ Exceltip.com “, môžete mať ľubovoľný názov hárka. ThisWorkbook.Sheets ("Exceltip.com"). Aktivujte 'Získavanie posledného riadka obsahujúceho ID e -mailu v stĺpci 3. lstRow = Bunky (Riadky. Počet, 3). Koniec (xlUp). Riadok' Premenná na uchovanie všetkých ID e -mailov Dim rng As Range Set rng = Range ("C2: C" & lstRow) 'initializing outlook object to access its features Set outApp = New Outlook.Application On Error GoTo cleanup' to handle any error during creation of object. „Smyčkou iterujte každý riadok, uchovávajte údaje v e -mailoch v premenných a odošlite“ poštu na každé ID e -mailu. Pre každú bunku v rng sendTo = Rozsah (cell.Address) .Offset (0, 0) .Value2 subj = Range (cell.Address) .Offset (0, 1) .Value2 & "-MS" msg = Range (cell. Adresa). Offset (0, 2). Hodnota2 atchmnt = Rozsah (bunka. Adresa). Offset (0, -1). Hodnota2 ccTo = Rozsah (bunka. Adresa). Offset (0, 3). Hodnota2 bccTo = Rozsah ( cell.Address). Offset (0, 4). Value2 On Error Resume Next 'do ruky any error during creation of below object Set outMail = outApp.CreateItem (0)' Writing and sent mail in new mail With outMail .To = sendTo .cc = ccTo .BCC = bccTo .Body = msg .Subject = subj .Attachments.Add atchmnt .Send 'this send mail without any notification. Ak chcete pred odoslaním vidieť poštu, použite metódu .Display. End With On Error GoTo 0 'Ak chcete vyčistiť všetky chyby zachytené skôr Set outMail = Nič' nullifying outmail object for next mail Next cell 'loop ends cleanup:' freeing all objects created Set outApp = Nothing Application.ScreenUpdating = True Application.ScreenUpdating = True Koniec pod 

Vyššie uvedený kód bude odosielať e -maily na každé e -mailové ID v riadku stĺpca „odoslať poštu“. Teraz, aby ste spustili tento kód, ho môžete spustiť priamo odtiaľto. Alebo môžete do zošita pridať obrázok alebo tlačidlo a potom k tomuto objektu priradiť toto makro. Používam tvary, pretože sú prispôsobiteľné. Urobiť tak, postupujte podľa nižšie uvedených krokov.

    • Prejdite na kartu Vložiť.
    • V skupine Ilustrácie nájdete tvary, kliknite na svoj obľúbený tvar.

    • Presuňte ho na list.
    • Skrášlite, ak chcete.
    • Kliknite naň pravým tlačidlom myši. Kliknite na Priradiť makro.

    • Zo zoznamu vyberte makro BulkMail.

  • Ukončite režim úprav.

Teraz, keď kliknete na tento objekt, spustí sa vaše makro a bude odosielať e -maily. Skontrolujte odoslané maily.
Tu si môžete stiahnuť súbor programu Excel Mail Sender.

Odosielanie hromadných e -mailov z Excelu VBA jedným kliknutím

Rozdeľte hárok programu Excel do viacerých súborov na základe stĺpca pomocou VBA | Ak chcete pracovný hárok rozdeliť na viacero súborov na základe hodnôt stĺpcov, budete ho musieť filtrovať, skopírovať a prilepiť do nového súboru.

Ako filtrovať údaje v programe Excel pomocou VBA | Filtrovanie údajov pomocou VBA je jednoduché. Tieto jednoduché riadky kódov filtrujú údaje o daných kritériách.

Vypnúť výstražné správy pomocou VBA v programe Microsoft Excel 2016 | Pri vykonávaní viacerých úloh, ako je otváranie a zatváranie súborov, Excel zobrazuje varovné správy, aby ste neprišli o údaje. Prerušujú spustený kód. Aby sa im vyhli

Ako prechádzať cez listy v programe Excel pomocou VBA | Aby sme sa mohli pohybovať tam a späť na dvoch alebo viacerých listoch, musíme ich previesť. Na prechádzanie niekoľkými listami používame…

7 Príklady slučiek For v programe Microsoft Excel VBA | Cyklus for je najpoužívanejšou technikou opakovania v akomkoľvek jazyku. Excel VBA nie je výnimkou.

Populárne články:

50 skratiek programu Excel na zvýšenie produktivity | Vykonajte svoju úlohu rýchlejšie. Týchto 50 skratiek vám umožní pracovať ešte rýchlejšie v Exceli.

Ako používať funkciu VLOOKUP v programe Excel | Toto je jedna z najpoužívanejších a najobľúbenejších funkcií programu Excel, ktorá sa používa na vyhľadávanie hodnôt z rôznych rozsahov a hárkov.

Ako používať funkciu COUNTIF v programe Excel | Počítajte hodnoty s podmienkami pomocou tejto úžasnej funkcie. Na počítanie konkrétnej hodnoty nepotrebujete filtrovať svoje údaje. Funkcia Countif je potrebná na prípravu palubnej dosky.

Ako používať funkciu SUMIF v programe Excel | Toto je ďalšia zásadná funkcia palubnej dosky. To vám pomôže zhrnúť hodnoty za konkrétnych podmienok.