VBA E-Mail aus Excel senden - Schritt für Schritt Code zum Senden von E-Mails

VBA-Code zum Senden von E-Mails aus Excel

In VBA zum Senden von E-Mails aus Excel können wir unsere Mailing-Funktion so automatisieren, dass E-Mails automatisch an mehrere Benutzer gleichzeitig gesendet werden können. Dazu müssen wir uns daran erinnern, dass Outlook von einem anderen Outlook-Produkt ausgeführt wird, sodass Outlook aktiviert werden muss Skripterstellung in VBA, um dies zu tun. Sobald dies erledigt ist, verwenden wir die .Application-Methode, um Outlook-Funktionen zu verwenden.

Die Vielseitigkeit von VBA ist einfach unglaublich. Der Grund, warum VBA-Codierer Excel lieben, weil wir mit VBA nicht nur in Excel arbeiten können. Vielmehr können wir auch auf andere Microsoft-Tools zugreifen. Wir können mit VBA auf PowerPoint, Word und Outlook zugreifen. Was mich beeindruckt hat, war, als ich hörte, dass ich E-Mails von Excel selbst verschicke. Ja, das ist wahr. Wir können E-Mails von Excel senden. In diesem Artikel zeigen wir Ihnen, wie Sie E-Mails von Excel mit Anhängen mithilfe der VBA-Codierung senden.

Referenz auf Microsoft Office Library festlegen

Wir müssen E-Mails aus Outlook senden. Da Outlook ein externes Objekt ist, müssen wir zunächst den Objektverweis auf " Microsoft Outlook 16.0- Objektbibliothek " setzen.

  • Gehen Sie in VBA zu Extras> Referenzen.
  • Jetzt sehen wir die Objektreferenzbibliothek. In diesem Fenster müssen wir den Verweis auf "Microsoft Outlook 16.0-Objektbibliothek" festlegen .
  • Klicken Sie nach dem Festlegen der Objektreferenz auf OK.

Jetzt können wir in der VBA-Codierung auf das Outlook-Objekt zugreifen.

13 einfache Schritte zum Senden von E-Mails aus Excel

Das Schreiben des Codes zum Senden einer E-Mail mit einem Anhang von Excel ist ziemlich kompliziert, aber es lohnt sich, etwas Zeit zu verbringen.

Befolgen Sie die folgenden Schritte, um Ihr erstes E-Mail-Excel-Makro zu schreiben.

Schritt 1

Starten Sie die Unterprozedur in VBA.

Code:

Sub SendEmail_Example1 () End Sub

Schritt 2

Deklarieren Sie die Variable Outlook.Application

Code:

Dim EmailApp As Outlook.Application 'Zum Verweisen auf die Outlook-Anwendung

Schritt 3

Die obige Variable ist eine Objektvariable. Wir müssen eine Instanz eines neuen Objekts separat erstellen. Um eine neue Instanz des externen Objekts zu erstellen, finden Sie unten den Code.

Code:

Set EmailApp = New Outlook.Application 'Zum Starten der Outlook-Anwendung

Schritt 4

Um die E-Mail zu schreiben, deklarieren wir eine weitere Variable als "Outlook.MailItem".

Code:

Dim EmailItem As Outlook.MailItem 'Zum Verweisen auf neue Outlook-E-Mails

Schritt 5

Um eine neue E-Mail zu starten, müssen wir den Verweis auf unsere vorherige Variable als CreateItem festlegen.

Code:

Set EmailItem = EmailApp.CreateItem (olMailItem) 'Zum Starten einer neuen Outlook-E-Mail

Ok, jetzt startet die Variable "EmailApp" den Ausblick und in der Variablen "EmailItem" können wir mit dem Schreiben der E-Mail beginnen.

Schritt 6

Jetzt müssen wir uns bewusst sein, welche Elemente wir beim Schreiben einer E-Mail haben. Als erstes müssen wir entscheiden, an wen wir die E-Mail senden. Dazu müssen wir auf die Eigenschaft "TO" zugreifen.

Schritt 7

Geben Sie die E-Mail-ID des Empfängers in doppelte Anführungszeichen ein.

Code:

EmailItem.To = "[email protected]"

Schritt 8

After addressing the main receiver, if you would like to CC anyone in the email, we can use the “CC” property.

Code:

EmailItem.CC = "[email protected]"

Step #9

After the CC, we can set the BCC email id as well.

Code:

EmailItem.BCC = "[email protected]"

Step #10

Now we need to include the Subject of the email we are sending.

Code:

EmailItem.Subject = "Test Email From Excel VBA"

Step #11

Now we need to write the body of the email by using HTML Body type.

Code:

EmailItem.HTMLBody = "Hi," & vbNewLine & vbNewLine & "This is my first email from Excel" & _ vbNewLine & vbNewLine & _ "Regards," & vbNewLine & _ "VBA Coder" 'VbNewLine is the VBA Constant to insert a new line

Step #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 als 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 = "E-Mail von Excel VBA testen" EmailItem.HTMLBody = "Hallo" & vbNewLine & vbNewLine & "Dies ist meine erste E-Mail von Excel "& _ vbNewLine & vbNewLine & _" Grüße "& vbNewLine & _" VBA Coder "Source = ThisWorkbook.FullName EmailItem.Attachments.Add Source EmailItem.Send End Sub

Führen Sie den obigen Code aus, und die E-Mail wird mit dem angegebenen Text der E-Mail mit der aktuellen Arbeitsmappe als Anhang gesendet.

Interessante Beiträge...