VBA Odeslat e-mail z aplikace Excel - Krok za krokem kód k odeslání e-mailu

Kód VBA pro odesílání e-mailů z aplikace Excel

Ve VBA k odesílání e-mailů z aplikace Excel můžeme automatizovat naši funkci zasílání e-mailů, abychom mohli automaticky odesílat e-maily více uživatelům najednou, abychom si tak pamatovali, že se to děje pomocí aplikace Outlook jiného produktu aplikace Outlook, takže musíme povolit aplikaci Outlook skriptování ve VBA a jakmile je hotovo, použijeme metodu .Application k použití funkcí aplikace Outlook.

Všestrannost VBA je prostě úžasná. Důvod, proč kodéry VBA milují, je vynikající, protože pomocí VBA můžeme nejen pracovat v Excelu. Spíše můžeme také přistupovat k dalším nástrojům společnosti Microsoft. Můžeme přistupovat k PowerPoint, Word a Outlook pomocí VBA. Věc, která na mě udělala dojem, byla, když jsem slyšela o „odesílání e-mailů z aplikace Excel.“ Ano, je to pravda. Můžeme posílat e-maily z aplikace Excel. V tomto článku vám ukážeme, jak posílat e-maily z aplikace Excel s přílohami pomocí kódování VBA.

Nastavit odkaz na knihovnu Microsoft Office

Musíme posílat e-maily z Outlooku. Protože Outlook je vnější objekt, první věcí, kterou musíme udělat, je nastavit odkaz na objekt na „ Knihovnu objektů Microsoft Outlook 16.0 Object “.

  • Ve VBA přejděte na Nástroje> Odkazy.
  • Nyní uvidíme knihovnu odkazů na objekty. V tomto okně musíme nastavit odkaz na „Objektovou knihovnu Microsoft Outlook 16.0“.
  • Po nastavení odkazu na objekt klikněte na, OK.

Nyní můžeme přistupovat k objektu aplikace Outlook v kódování VBA.

13 snadných kroků k odesílání e-mailů z aplikace Excel

Psaní kódu pro odeslání e-mailu s přílohou z aplikace Excel je docela komplikované, ale stojí za to strávit nějaký čas.

Při psaní prvního makra aplikace Excel postupujte podle následujících kroků.

Krok 1

Spusťte podproces ve VBA.

Kód:

Sub SendEmail_Example1 () End Sub

Krok 2

Deklarujte proměnnou Outlook.Application

Kód:

Dim EmailApp As Outlook.Application 'To refer to outlook application

Krok # 3

Výše uvedená proměnná je objektová proměnná. Musíme vytvořit instanci nového objektu samostatně. Chcete-li vytvořit novou instanci vnějšího objektu, níže je kód.

Kód:

Set EmailApp = New Outlook.Application 'To launch outlook application

Krok č. 4

Abychom mohli napsat e-mail, deklarujeme ještě jednu proměnnou jako „Outlook.MailItem“.

Kód:

Dim EmailItem As Outlook.MailItem 'To refer new outlook email

Krok # 5

Abychom mohli spustit nový e-mail, musíme nastavit odkaz na naši předchozí proměnnou jako CreateItem.

Kód:

Set EmailItem = EmailApp.CreateItem (olMailItem) 'Chcete-li spustit nový e-mail aplikace Outlook

Dobře, nyní proměnná „EmailApp“ spustí výhled a v proměnné „EmailItem“ můžeme začít psát e-mail.

Krok # 6

Nyní si musíme být vědomi toho, jaké položky máme při psaní e-mailu. První věc je, že se musíme rozhodnout, komu posíláme e-mail. Proto potřebujeme přístup k vlastnosti „TO“.

Krok # 7

Zadejte e-mail ID příjemce v uvozovkách.

Kód:

EmailItem.To = "[email protected]"

Krok # 8

Po oslovení hlavního příjemce, pokud chcete CC komukoli v e-mailu, můžeme použít vlastnost „CC“.

Kód:

EmailItem.CC = "[email protected]"

Krok # 9

Po CC můžeme také nastavit BCC email id.

Kód:

EmailItem.BCC = "[email protected]"

Krok # 10

Nyní musíme zahrnout předmět e-mailu, který posíláme.

Kód:

EmailItem.Subject = "Testovat e-mail z aplikace Excel VBA"

Krok # 11

Nyní musíme napsat text e-mailu pomocí typu těla HTML.

Kód:

EmailItem.HTMLBody = "Ahoj," & vbNewLine & vbNewLine & "Toto je můj první e-mail z aplikace Excel" & _ vbNewLine & vbNewLine & _ "S pozdravem," & vbNewLine & _ "VBA Coder" 'VbNewLine je konstanta VBA pro vložení nový řádek

Krok # 12

If we want to add an attachment as the current workbook, we are working on. Then we need to use attachments property. First, declare a variable source as a string.

Code:

Dim Source As String

Then in this variable, write ThisWorkbook.FullName after Email body.

Code:

Source = ThisWorkbook.FullName

In this VBA Code, ThisWorkbook is used for the current workbook and .FullName is used to get the full name of the worksheet.

Then write the following code to attach the file.

Code:

EmailItem.Attachments.Add Source

Step #13

Now finally, we need to send the email to the mentioned email IDs. This can be done by using the “Send” method.

Code:

EmailItem.Send

Ok, we are done with the coding part.

Code:

Sub SendEmail_Example1 () Dim EmailApp As Outlook.Application Dim Source As String Set EmailApp = New Outlook.Application Dim EmailItem As Outlook.MailItem Set EmailItem = EmailApp.CreateItem (olMailItem) EmailItem.To = "[email protected]" EmailItem.CC = "[email protected]" EmailItem.BCC = "[email protected]" EmailItem.Subject = "Testovat e-mail z aplikace Excel VBA" EmailItem.HTMLBody = "Ahoj," & vbNewLine & vbNewLine & "Toto je můj první e-mail od Excel "& _ vbNewLine & vbNewLine & _" S pozdravem, "& vbNewLine & _" VBA Coder "Zdroj = ThisWorkbook.FullName EmailItem.Attachments.Add Zdroj EmailItem.Send End Sub

Spusťte výše uvedený kód a odešle e-mail s uvedeným tělem e-mailu s aktuálním sešitem jako přílohou.

Zajímavé články...