Funkcia Excel VBA Outlook

Denne pracujeme na mnohých súboroch programu Excel a denne ich posielame mnohým používateľom. Rovnakú správu píšeme do e-mailu každý deň a posielame tento vynikajúci súbor. Toto nám dáva rozsah automatizácie tejto úlohy. Počuli ste to správne. Túto úlohu písania e-mailov a odoslania súboru je možné automatizovať pomocou VBA. Dôvodom je, že VBA môže používať referenciu s rôznymi objektmi spoločnosti Microsoft, ako sú napríklad Outlook, Word, PowerPoint, Maľovanie atď.

Môžeme teda poslať e-mail pomocou VBA. Teraz som si istý, že všetci budete nadšení, keď vieme, ako vám môžeme poslať e-mail pomocou VBA.

V tomto článku sa naučíme, ako používať program Outlook ako objekt Microsoft od spoločnosti Excel pomocou programovania VBA a ako môžeme pomocou e-mailu VBA odoslať e-mail vrátane prílohy.

Ako používať funkciu Excel VBA Outlook?

Ak chcete používať funkciu VBA Outlook, musíme urobiť dve veci.

Túto šablónu aplikácie VBA Outlook Excel si môžete stiahnuť tu - šablónu aplikácie VBA Outlook Excel
  1. Odkaz na objekt Microsoft Outlook z knižnice objektov vo VBA.
  2. Napíšte kód VBA na odosielanie e-mailov v module VBA.

# 1 - Referencia programu Outlook z programu Excel

Ako viete, program Outlook je objekt a my musíme poskytnúť odkaz na objekt programu Outlook. Takže vo VBA existuje referenčná knižnica objektov, ktorú musíme použiť ako referenciu.

Ak chcete použiť referenčnú knižnicu objektov, postupujte podľa nasledujúcich krokov.

Krok 1: Na karte Developer kliknite na Visual Basic a otvorte editor VB.

Krok 2: Prejdite na položku Nástroje a potom vyberte možnosť Odkazy, ako je to znázornené na obrázku nižšie.

Krok 3: Prejdite nadol v knižnici referenčných objektov a vyberte položku „Microsoft Object 16.0 Object Library“, aby ste ju sprístupnili pre Excel VBA.

V závislosti od kancelárie spoločnosti Microsoft sa verzia programu Outlook môže líšiť. V našom prípade je to 16, 0. AplikáciuMicrosoft Outlook 14.0 Object Library“ môžete použiť, ak ide o verziu zobrazenú vo vašom počítači.

Začiarknite políčko programu Microsoft Outlook, ako je to znázornené na predchádzajúcom obrázku. Teraz môžeme použiť objekt Microsoft Outlook v Excel VBA.

Tento proces nastavovania odkazu na „KNIŽNIK OBJEKTOV MICROSOFT OUTLOOK 16.0“ sa nazýva skorá väzba. Bez nastavenia knižnice objektov ako „MICROSOFT OUTLOOK 16.0 OBJECT LIBRARY“ nemôžeme používať vlastnosti IntelliSense a metódy VBA, čo sťažuje zápis kódu.

# 2 - Napíšte kód na odosielanie e-mailov z VBA Outlook z Excelu

Podľa pokynov uvedených nižšie napíšte kód VBA na odoslanie e-mailu z programu Outlook z programu Outlook.

Krok 1: Vytvorte vedľajšiu procedúru pomenovaním makra. Makro pomenujeme ako „send_email“, ako je to znázornené na nasledujúcom obrázku.

kód:

 Možnosť Explicitné Sub Send_email () End Sub 

Krok 2: Definujte premennú ako program Outlook. Aplikácia uvedená na nasledujúcom snímke obrazovky. Toto je odkaz na aplikáciu VBA Outlook.

kód:

 Možnosť Explicitné Sub Send_email () Dim OutlookApp ako Outlook.Application End Sub 

Krok 3: Musíme odoslať e-mail v programe Outlook, takže definujte inú premennú ako „ Outlook.Mailitem “, ako je to znázornené na nasledujúcom obrázku.

kód:

 Možnosť Explicitné Sub Send_email () Dim OutlookApp ako Outlook.Application Dim OutlookMail As Outlook.MailItem End Sub 

Krok 4: V predchádzajúcich krokoch sme definovali premennú, teraz ich musíme nastaviť.

Teraz nastavte prvú premennú „Outlook Application“ na „New Outlook.Application“, ako je to znázornené na nasledujúcom obrázku.

kód:

 Možnosť Explicitné Sub Send_email () Dim OutlookApp ako Outlook.Application Dim OutlookMail As Outlook.MailItem Set OutlookApp = Nový Outlook.Application End Sub 

Krok 5: Teraz nastavte druhú premennú „Outlook Mail“ pomocou nižšie uvedeného kódu.

kód:

 Možnosť Explicitné Sub Send_email () Dim OutlookApp ako Outlook.Application Dim OutlookMail As Outlook.MailItem Set OutlookApp = Nový Outlook.Application Set OutlookMail = OutlookApp.CreateItem (olMailItem) End Sub 

Krok 6: Teraz môžeme používať aplikáciu VBA Outlook pomocou príkazu „ With “, ako je to znázornené na nasledujúcom obrázku.

kód:

 Možnosť Explicitné Sub Send_email () Dim OutlookApp ako Outlook.Application Dim OutlookMail As Outlook.MailItem Set OutlookApp = Nový Outlook.Application Set OutlookMail = OutlookApp.CreateItem (olMailItem) S OutlookMail End Sub 

Teraz máme prístup k e-mailovým položkám, ako sú „Komu“, „CC“, „BCC“, „predmet“, „telo e-mailu“ a mnoho ďalších položiek.

Krok 7: Vo vyhlásení „With“ vidíme zoznam vložením bodky označovanej ako „Intellisense List“.

Krok 8: Najskôr vyberte formát tela ako olFormatHtml, ako je to znázornené na nasledujúcom obrázku.

kód:

 S OutlookMail .BodyFormat = olFormatHTML End Sub 

Krok 9: Výberom položky „Displej“ zobrazíte poštu, ako je to znázornené na nasledujúcom obrázku.

kód:

 S OutlookMail .BodyFormat = olFormatHTML. Displej End Sub 

Krok 10: Vyberte „ .HTMLbody “, aby ste napísali e-mail, ako je to znázornené na nasledujúcom obrázku.

kód:

 S OutlookMail .BodyFormat = olFormatHTML. Displej .HTMLBody = "Sem napíš svoj email" End Sub 

Pri písaní e-mailu v kóde VBA si musíme pamätať na pár vecí.

"
“Sa používa na zahrnutie rozdelenia riadkov medzi dve riadky. Ak chcete do e-mailu pridať podpis, musíte zadať „& .HTMLbody“

Nižšie je uvedený príklad, ako napísať e-mail vo VBA.

kód:

 S OutlookMail .BodyFormat = olFormatHTML. Displej .HTMLBody = "Vážený ABC" & "
"&" Nájdite priložený súbor "& .HTMLBody End Sub

Krok 11: Teraz musíme pridať príjemcu e-mailu. Na tento účel musíte použiť „.

kód:

 .To = " " 

Krok 12: Ak chcete niekoho pridať do „CC“ a „BCC“, môžete použiť „.CC“ a „.BCC“, ako je to znázornené na nasledujúcom obrázku.

kód:

 .CC = " " .BCC = " " 

Krok 13: Na pridanie predmetu pre e-mail, ktorý posielame, môžeme použiť „ .Subjekt “, ako je to znázornené na nasledujúcom obrázku.

kód:

 .Subject = "TEST MAIL" 

Krok 14: Aktuálny zošit môžeme pridať ako prílohu do e-mailu pomocou vlastnosti „Príloha“. Najprv deklarujte premennú Source ako reťazec.

kód:

 Dim source_file ako String 

Potom pomocou nasledujúceho kódu pripojte súbor k e-mailu.

kód:

 source_file = ThisWorkbook.FullName .Attachments.Add source_file 

ThisWorkbook sa používa pre aktuálny zošit a. FullName sa používa na získanie celého názvu pracovného hárka.

Krok 15: Posledným kódom je odoslať e-mail, pre ktorý môžeme použiť „ .send “. Nezabudnite však uzavrieť postup With and Sub za „End with“ a „End Sub“, ako je to znázornené na nasledujúcom obrázku.

Takže kód je konečne pripravený na odoslanie e-mailu. Teraz musíme makro spustiť.

Krok 16: Spustite kód stlačením klávesy F5 alebo Run a pozrite si výstup.

Záverečný úplný kód

Nižšie je uvedený konečný kód o tom, ako poslať e-mail pomocou aplikácie VBA Outlook.

kód:

 Možnosť Explicitné Sub Send_email () Dim OutlookApp ako Outlook.Application Dim OutlookMail As Outlook.MailItem Dim source_file As String Set OutlookApp = Nový Outlook.Application Set OutlookMail = OutlookApp.CreateItem (olMailItem) S OutlookMail .BodyFormat = olFormatHTML. Displej = "Display". " Vážený ABC "&"
"&" Nájdite priložený súbor "& .HTMLBody .To =" ".CC =" ".BCC =" ".Subject =" TEST MAIL "source_file = ThisWorkbook. Celé meno .Prílohy.Pridajte zdrojový súbor .Odoslať koniec s koncom Sub

Príklad funkcie Outlook VBA

Predpokladajme, že existuje vedúci tímu a chce posielať denný e-mail na sledovanie aktivít každého člena. E-mail bude taký.

Ahoj tím,

Požiadajte vás, aby ste sa dnes o 11:00 hod. Podelili o svoje akcie týkajúce sa vašich sledovaných položiek.

Ďakujem, s pozdravom,

nevedno

"

Postupujte podľa vyššie uvedených krokov na odkazovanie na objekt Microsoft a zapísanie kódovania VBA, alebo môžete zodpovedajúcim spôsobom zmeniť kód.

Takže pri zachovaní rovnakého kódu potrebujeme zmeniť niekoľko vecí v kóde, napríklad Email ID príjemcu, Predmet, Telo e-mailu a v e-maile nebude žiadna príloha.

Nižšie je upravený kód, ktorý používame na napísanie tohto e-mailu.

kód:

 Sub Send_teamemail () Dim OutlookApp ako Outlook.Application Dim OutlookMail As Outlook.MailItem Set OutlookApp = New Outlook.Application Set OutlookMail = OutlookApp.CreateItem (olMailItem) With OutlookMail .BodyFormat = olFormatHTML. Displej .HTMLBody = "Ahoj tím" & "
„&“
"&" Požiadajte vás, aby ste sa dnes o 20:00 hod. Podelili o svoje akcie týkajúce sa vašich sledovaných položiek. "& .HTMLBody .To =" ; ; ".Subject =" Team Follow Up ".Odoslať koniec s End Sub

Po spustení makra uvidíte, že pošta bola automaticky odoslaná z vášho výhľadu.

Čo je potrebné pamätať

  • Najprv sa uistite, že máte nainštalovaný program Microsoft Outlook vo svojom počítači a že ste sa prihlásili do svojho účtu.
  • Uistite sa, že je vždy začiarknuté políčko pre Microsoft Outlook v referenčnej knižnici objektov. Ak sa nezačiarkne, kód sa nespustí a vyvolá chybu.
  • Definovanie premenných a nastavenie premenných je veľmi dôležité pri kódovaní VBA. Bez premenných nebude kód fungovať.
  • Uistite sa, že ak chcete do pošty pridať podpis, najskôr by ste mali mať v programe Outlook aspoň jeden podpis.
  • Vždy používajte “
    “Na zadanie medzier v pošte.

Odporúčané články

Toto je sprievodca programom VBA Outlook. Tu diskutujeme o tom, ako posielať e-maily z programu Outlook pomocou kódov VBA vo formáte Excel spolu s príkladom a šablónou programu Excel na stiahnutie. Nižšie uvádzame niekoľko užitočných vynikajúcich článkov týkajúcich sa VBA -

  1. Čo je to chyba VF overFlow?
  2. Prispôsobte panel nástrojov Rýchly prístup v Exceli
  3. Príklady pomenovaného rozsahu VBA
  4. Ako poslať e-mail z Excel VBA
  5. Ako používať možnosť Explicit vo VBA?

Kategórie: