VBA Send e-post fra Excel | Steg for trinn-kode for å sende e-post

VBA-kode for å sende e-post fra Excel

I VBA for å sende e-post fra Excel kan vi automatisere e-postfunksjonen vår slik at vi automatisk kan sende e-post til flere brukere om gangen. For å gjøre det må vi huske at det gjøres ved å utse et annet produkt av outlook, så vi må aktivere outlook skripting i VBA for å gjøre det, og når det er gjort, bruker vi .Applikasjonsmetode for å bruke Outlook-funksjoner.

VBAs allsidighet er bare fantastisk. Årsaken til at VBA-kodere elsker å utmerke seg fordi vi ikke bare kan jobbe innenfor excel ved å bruke VBA, men vi kan også få tilgang til andre Microsoft-verktøy. Vi får tilgang til PowerPoint, Word og Outlook ved hjelp av VBA. Det som imponerte meg var da jeg hørte om "å sende e-post fra excel selv". Ja, det er sant at vi kan sende e-post fra excel. I denne artikkelen vil vi vise deg hvordan du sender e-post fra Excel med vedlegg ved hjelp av VBA-koding.

Sett referanse til Microsoft Office Library

Vi må sende e-post fra Outlook. Siden Outlook er et utenforliggende objekt, må vi først sette objektreferansen til " Microsoft Outlook 16.0 Object Library ".

  • Gå til Verktøy> Referanser i VBA

  • Nå vil vi se objektreferansebiblioteket. I dette vinduet må vi sette referansen til “Microsoft Outlook 16.0 Object Library”

  • Etter å ha satt objektreferansen, klikk på Ok.

Nå kan vi få tilgang til Outlook-objekt i VBA-koding.

13 enkle trinn for å sende e-post fra Excel

Å skrive koden for å sende en e-post med et vedlegg fra excel er ganske komplisert, men det er verdt å bruke litt tid.

Du kan laste ned denne Excel-malen for VBA Send e-post her - VBA Send e-postmalen for Excel

Følg trinnene nedenfor for å skrive din første Excel Excel-makro.

Trinn 1

Start delprosedyren i VBA.

Kode:

 Sub SendEmail_Example1 () Slutt Sub 

Steg 2

Deklarer variabelen Outlook.Application

Kode:

 Dim EmailApp As Outlook.Application 'For å referere til Outlook-applikasjonen 

Trinn 3

Ovenstående variabel er en objektvariabel. Vi må lage en forekomst av et nytt objekt separat. For å opprette en ny forekomst av utsiden objektet nedenfor er koden.

Kode:

 Set EmailApp = New Outlook.Application 'For å starte Outlook-applikasjonen 

Trinn 4

Nå for å skrive e-posten, erklærer vi en variabel til som "Outlook.MailItem".

Kode:

 Dim EmailItem As Outlook.MailItem 'For å henvise ny Outlook e-post 

Trinn 5

For å starte en ny e-post, må vi sette referansen til vår forrige variabel som CreateItem.

Kode:

 Sett EmailItem = EmailApp.CreateItem (olMailItem) 'For å starte ny Outlook-e-post 

OK, nå vil variabelen “EmailApp” starte Outlook og i variabelen “EmailItem” kan vi begynne å skrive e-posten.

Trinn 6

Nå må vi være klar over hva som er elementene vi har når vi skriver en e-post. Det første er at vi må bestemme hvem vi sender e-posten til. Så for dette må vi få tilgang til “TO” -egenskapen.

Trinn 7

Skriv inn e-post-ID-en til mottakeren i to anførselstegn.

Kode:

EmailItem.To = "[email protected]"

Trinn 8

Etter å ha adressert til hovedmottakeren, hvis du vil CC noen i e-posten, kan vi bruke "CC" -egenskapen.

Kode:

EmailItem.CC = "[email protected]"

Trinn 9

Etter CC kan vi også angi e-post-ID for BCC.

Kode:

EmailItem.BCC = "[email protected]"

Trinn # 10

Nå må vi ta med Emne for e-posten vi sender.

Kode:

EmailItem.Subject = "Test e-post fra Excel VBA"

Trinn 11

Nå må vi skrive brødteksten til e-posten ved å bruke HTML-kroppstype.

Kode:

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 ID’s. This can be done by using “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 = "Test Email From Excel VBA" EmailItem.HTMLBody = "Hi," & vbNewLine & vbNewLine & "This is my first email from Excel" & _ vbNewLine & vbNewLine & _ "Regards," & vbNewLine & _ "VBA Coder" Source = ThisWorkbook.FullName EmailItem.Attachments.Add Source EmailItem.Send End Sub 

Run the above code and it will send the email with the mentioned body of the email with the current workbook as the attachment.