VBA Send e-post fra Excel
VBA er ikke bare begrenset til data i Excel. Vi kan sende e-post via VBA, og det er dette vi vil lære i denne artikkelen. Det krever betydelig kunnskap om VBA og dens metoder for å skrive koden for å sende e-post fra Excel. Før vi går til å skrive og sende e-post fra Excel, la oss vite hva denne automatiseringen betyr. Denne typen automatisering betyr at du får tilgang til en funksjon i et annet program ved å bruke et hvilket som helst annet program. Nå er postfunksjonen tilbudt av Microsoft i Outlook, vi vil bruke metoder og egenskaper for outlook i Excel for å sende e-post. For å sende en e-post må vi også vite det grunnleggende for e-post. På lekmannstiden, hva er prosessen og hva er kravet for å sende en e-post? En e-post består av en e-postadresse til avsenderen hvis det er en CC (Carbon Copy) eller en BCC og en emnelinje med et e-postorgan.
Hvordan sende e-post fra Excel VBA?
La oss lære hvordan du sender e-post via outlook fra Excel i VBA ved et eksempel. I dette eksemplet vil vi også sende et vedlegg til mottakeren, den samme Excel-filen som vi skal skrive koden.
Du kan laste ned denne VBA Send E-post Excel-mal her - VBA Send E-post Excel-malFølg trinnene nedenfor for å sende e-post fra Excel ved hjelp av VBA-kode:
Trinn 1: I fanen Developer klikker du på Visual Basic for å åpne VB Editor.
Før vi går inn på å skrive koder for å sende en e-post, må vi vite dette om at outlook er et eksternt objekt, og vi må henvise det i VBA.
Trinn 2: Gå til Verktøy, og velg deretter Referanser.
Trinn 3: Hvis du klikker på referansen, åpnes en veiviserboks for oss, finner en referanse for Microsoft Outlook Object-biblioteket og sjekker den og klikker deretter på Ok.
Trinn 4: Klikk på insert-fanen og sett inn en modul i VBA-prosjektet.
Trinn 5: Definer en underprosess som vist nedenfor.
Kode:
Sub EmailExample () Slutt Sub
Trinn 6: Ved å henvise til utsiktene ovenfor, kan vi nå få tilgang til egenskapene til outlook i VBA. La oss nå erklære en variabel som en outlook-applikasjon.
Kode:
Dim e-post som Outlook.Application
Trinn 7: I likhet med FSO er denne variabelen en objektvariabel, så for å få tilgang til andre applikasjoner trenger vi å opprette noen forekomster, opprette en forekomst som vist nedenfor ved å bruke SET nøkkelordet.
Kode:
Angi e-post = nytt Outlook.Application
Trinn 8: Siden vi ønsker å sende et vedlegg til mottakeren, må vi erklære en variabel som streng som holder banen for vedlegget.
Kode:
Dim Sr As String
Trinn 9: La oss starte med utsendingsdelen i denne koden, for å sende en e-post må vi definere en annen variabel som vil bruke egenskapen til outlook til å referere til en ny e-post som vist nedenfor.
Kode:
Demp nypost som Outlook.MailItem
Trinn 10: På samme måte som ovenfor med å bruke en annen applikasjon i eksemplet vi trenger for å opprette forekomster, nå må vi lage en forekomst for en ny e-post som åpner den nye e-posten ved hjelp av det angitte nøkkelordet.
Kode:
Angi newmail = E-post.CreateItem (olMailItem)
Før vi går videre, la meg forklare fremdriften så langt, den første forekomsten vil åpne utsiktene for oss, mens den andre forekomsten vil åpne den nye e-posten for oss.
Trinn 11: Som jeg har forklart ovenfor om hva som er kravet for å sende en e-post. Det første kravet er en mottaker som er “Til” i en e-post. Så la oss bruke Til-egenskapen til outlook i Excel som følger.
Kode:
newmail.To = " postbeskyttet "
Trinn 12: Siden vi har brukt Til-egenskapen, har vi en annen funksjon som vi kan bruke, for eksempel Carbon Copy eller CC-egenskapen til outlook.
Kode:
newmail.CC = " postbeskyttet "
På samme måte kan vi bruke BCC-egenskapen.
Merk: BCC-egenskapen brukes når vi vil skjule e-postadressen til BCC-mottakeren for de andre mottakerne.Hva er neste trinn i å sende en e-post?
Trinn 13: Det er gjenstand. Når vi skriver forekomstnavnet med en prikkoperatør, kan vi se alternativet for et emne som følger.
Trinn 14: Trykk Tab for emnet IntelliSense og skriv et tilfeldig emne som vist nedenfor.
Kode:
newmail.Subject = "Dette er en automatisert e-post"
Trinn 15: Det neste trinnet i å skrive en e-post er et organ for e-posten. Som egenskapene, brukte vi ovenfor med forekomsten, la oss bruke kroppens egenskap for utsiktene til å skrive kroppen som følger.
Kode:
newmail.HTMLBody = "Hei" & vbNewLine & vbNewLine & "Dette er en test-e-post fra Excel" & _ vbNewLine & vbNewLine & _ "Hilsen" & vbNewLine & _ "VBA Coder"
Trinn 16: Nå har vi opprettet en e-post med en kropps- og emnelinje i den. Neste trinn er å legge til et vedlegg til e-posten. Siden vi ønsker å sende det gjeldende regnearket til mottakeren, bruker vi banen som følger,
Kode:
Sr = ThisWorkbook.FullName
Trinn 17: Nå kan vi sende vedlegget med vedleggsegenskapen som vist nedenfor.
Kode:
newmail.Attachments.Add Sr
Trinn 18: Nå må vi endelig sende e-posten. Som i outlook, trykker vi på send-knappen for å sende en e-post, på samme måte vil vi bruke sendegenskapene til outlook som følger.
Kode:
newmail.Send
Endelig Full kode
Så nedenfor er den endelige koden for hvordan du sender en e-post fra Excel ved hjelp av VBA.
Kode:
Sub EmailExample () Dim Email As Outlook.Application Set Email = New Outlook.Application Dim Sr As String Dim newmail Som Outlook.MailItem Set newmail = Email.CreateItem (olMailItem) newmail.To = " " newmail.CC = " postbeskyttet " newmail.Subject = "Dette er en automatisert e-post" newmail.HTMLBody = "Hei, " & vbNewLine & vbNewLine & "Dette er en test-e-post fra Excel" & _ vbNewLine & vbNewLine & _ "Hilsen, " & vbNewLine & _ "VBA Coder" Sr = ThisWorkbook.FullName newmail.Attachments.Add Sr newmail.Send End Sub
Når vi kjører koden ovenfor, må vi vente i noen sekunder på at koden skal utføres, og vi kan sjekke ut sendt rute i utsiktene for at e-posten er blitt sendt gjennom Excel.
Ting å huske
- Vi bruker en annen applikasjon for å sende en e-post fra Excel.
- For å bruke et annet program oppretter vi forekomster.
- Før vi bruker Outlook som et annet program, må vi henvise til Outlook-objekter fra referansefanen.
- Vi må vite kravene til en e-post for å sende en e-post.
Anbefalte artikler
Dette er en guide til VBA Send e-post fra Excel. Her diskuterer vi hvordan du kan sende e-post med vedlegg fra Excel ved hjelp av VBA-kode sammen med et eksempel og nedlastbar Excel-mal. Nedenfor er noen nyttige excel-artikler relatert til VBA -
- VBA-hyperkobling med eksempler
- Hvordan bruke YEAR-funksjon i Excel?
- Tips om bruk av VBA Outlook
- Veiledninger om Excel Date-funksjon