Slik sender du masse -e -post fra Excel VBA med ett klikk i Excel

Innholdsfortegnelse

Har du noen gang behov for å sende e -post fra Excel VBA til flere e -post -IDer, gitt i et Excel -ark? Vil du lære hvordan du sender e -post fra Excel uten å åpne outlook? Denne artikkelen dekker hvordan du kan automatisere Outlook og sende flere e -postmeldinger med vedlegg fra Excel med ett klikk, og beholde folk i Cc og Bcc også.

Til slutt kan du også laste ned filen for å sende menn umiddelbart til hundrevis av ID -er. Filen inneholder makro for å sende e -post fra excel.

Hvordan sende e -post fra Excel?
For å sende e -post fra Excel må du forstå disse VBA -kodene.

Viktig: Du må ha en e -post konfigurert i Outlook -programmet.

Trykk på F11 for å åpne VB Editor.

  • Legg til en referanse til outlook -objektbiblioteket:
      • Gå til Verktøy i menyen, og klikk på Referanser.

    • Finn Microsoft 16.0 Object Library. Versjonen kan være annerledes. Det er 16,0 i Excel 2016. Merk av for det. Og klikk OK.

    • Lag referanser til Outlook -applikasjon og e -post: For å få tilgang til funksjonene i Microsoft Outlook må vi lage objektet.
Dim outApp As Outlook.Application 'Dette vil opprette en referanse til outlook -objektet. Dim outApp As Outlook.MailItem 'Dette vil opprette en referanse til MailItem. 
    • Initialiser referansene: Ovennevnte referanser må initialiseres:
Set outApp = New Outlook.Application Set outMail = outApp.CreateItem (0)
    • Sende e -post med outMail -objekt: Under linjene vil du definere kommandoen for e -post -mål, cc, bcc, emne, brødtekst, vedlegg og sende.
With outMail .To = "abcd.mail.com" 'Obligatorisk. Her definerer du destinasjonspost -id… cc = "cc.mail.com" 'valgfritt. Kopi -ID for e -post hvis du vil … BCC = "bcc.mail.com" 'valgfritt. Bcc mail -ID hvis du vil … Subject = subj 'should have. Massasjen på postkroppen … Kropp = melding valgfri. Massasjen på postkroppen … Vedlegg.Legg til "C: /exceltip.com \ test.xlsx" 'valgfritt. Fullt kvalifisert navn på vedlegg … Send 'Obligatorisk hvis du vil sende e -post fra excel. Du vil se e -posten i outlook, bruk .Display -metode. Slutt med 

Det er det. Det er alt du trenger for å sende e -post fra excel ved hjelp av VBA.

La oss nå se et eksempel som sender e -post til hver e -post -ID i en Excel -kolonne separat.

Scenario:
Tenk deg at du får et Excel -ark som inneholder 100 e -post -ID -er, og du må sende en e -post til hver e -post -ID separat. Ikke bare dette, du må også legge ved elementer. Dette vil ta deg timer hvis du gjør det manuelt. Så la oss automatisere denne postoppgaven i Excel VBA.

Her har jeg disse dataene. I kolonne C, med tittelen "Send e -post til", er det flere e -post -ID -er. Jeg må sende en e -post til hver e -post -ID i denne kolonnen.
For dette har jeg laget kolonner for Subject, Massage body, CC og BCC.

"Send e -post til" skal ikke ha noen tom celle i mellom. Alle andre kolonner kan ha tomme celler. Hvis du vil
flere e -post -ID -er i til skriv deretter e -post -ID -ene med kommaer i denne kolonnen. Sørg for at e -post -ID -er er gyldige.

Hvis du vil sende vedlegg. Skriv adressene til disse filene i vedleggskolonnen.

Skriv emnet i emnekolonnen.

Massasje i Massasje Kroppssøyle.

Hvis du vil beholde noen i cc, skriver du e -post -ID -en hans i CC -kolonnen. Samme med BCC. bruk komma for flere e -post -ID -er.

Følg disse trinnene for å sende e -post til hver e -post -ID i kolonnen.

  • Trykk Alt+F11 for å åpne VBA Editor i Excel.
  • Legg til referanse til outlook -objektet ved å følge trinnene som ble fortalt tidligere.
  • I en ny modul, kopier koden nedenfor.
'*** Du må ha en Outlook -e -post konfigurert i outlook -applikasjonen på systemet ditt ***' *** legg til referanse til outook -objektbibliotek fra referanser i verktøy *** Sub BulkMail () Application.ScreenUpdating = False ThisWorkbook.Activate ' Opprette referanser til Application and MailItem Objects of Outlook Dim outApp As Outlook.Application Dim outMail As Outlook.MailItem 'Opprette variabel for å holde verdier for forskjellige postelementer Dim sendTo, subj, atchmnt, msg, ccTo, bccTo As String Dim lstRow As Long 'Mine data er på arket "Exceltip.com", du kan ha et hvilket som helst arknavn. ThisWorkbook.Sheets ("Exceltip.com"). Aktiver 'Få siste rad med e -post -ID i kolonne 3. lstRow = Cells (Rows.Count, 3) .End (xlUp) .Row' Variable for å holde alle e -post -ID -er Dim rng As Range Set rng = Range ("C2: C" & lstRow) 'initialiserende outlook -objekt for å få tilgang til funksjonene Set outApp = New Outlook.Application On Error GoTo cleanup' for å håndtere eventuelle feil under oppretting av objekt. 'Sløyfe for å gjenta gjennom hver rad, hold data i e -posten i variabler og send' e -post til hver e -post -ID. For hver celle I rng sendTo = Range (cell.Address) .Offset (0, 0) .Value2 subj = Range (cell.Address) .Offset (0, 1) .Value2 & "-MS" msg = Range (cell. Adresse) .Offset (0, 2) .Value2 atchmnt = Range (cell.Address) .Offset (0, -1) .Value2 ccTo = Range (cell.Address) .Offset (0, 3) .Value2 bccTo = Range ( cell.Address) .Offset (0, 4) .Value2 On Error Resume Next 'for å levere eventuelle feil under opprettelsen av objektet nedenfor Set outMail = outApp.CreateItem (0)' Skrive og sende e -post i ny post Med outMail .To = sendTo .cc = ccTo .BCC = bccTo .Body = msg .Subject = subj .Attachments.Add atchmnt .Send 'denne e -posten uten varsel. Hvis du vil se e -post 'før du sender, bruker du .Metode. Avslutt med på feil Gå til 0 'For å rydde eventuelle feil som er tatt tidligere Set outMail = Ingenting' opphever utpostobjekt for neste e -post Neste cellesløyfe slutter opprydding: 'frigjøring av alle objekter som er opprettet Set outApp = Nothing Application.ScreenUpdating = True Application.ScreenUpdating = True Slutt Sub 

Koden ovenfor sender e -post til hver e -post -ID i en rad med "send e -post til" -kolonnen. Nå for å kjøre denne koden, kan du kjøre den direkte herfra. Eller du kan legge til en figur eller knapp i arbeidsboken din og deretter tilordne denne makroen til objektet. Jeg bruker former fordi de kan tilpasses. Å gjøre slik, følg trinnene nedenfor.

    • Gå til kategorien Sett inn.
    • I illustrasjonsgruppen kan du finne former, klikke på din favorittform.

    • Dra og slipp den på arket ditt.
    • Forbedre hvis du vil.
    • Høyreklikk på den. Klikk på Tildel makro.

    • Velg BulkMail -makro fra listen.

  • Gå ut av redigeringsmodus.

Når du klikker på dette objektet, kjører makroen og sender e -post. Sjekk sendte e -poster for å sikre.
Du kan laste ned Excel Mail Sender File her.

Send masse e -post fra Excel VBA med ett klikk

Del Excel -ark i flere filer basert på kolonne ved hjelp av VBA | For å dele et regneark i flere filer, basert på en kolonnes verdier, må du filtrere det kopiere og lime det inn i en ny fil.

Slik filtrerer du dataene i Excel ved hjelp av VBA | Filtrering av data ved hjelp av VBA er enkelt. Disse enkle kodelinjene filtrerer dataene etter de gitte kriteriene.

Slå av advarselsmeldinger ved hjelp av VBA i Microsoft Excel 2016 | Mens du utfører flere oppgaver, som å åpne og lukke filer, viser Excel advarselsmeldinger slik at du ikke mister data. De avbryter løpekoden. For å unngå dem

Slik går du gjennom ark i Excel ved hjelp av VBA | For å gå frem og tilbake på to eller flere ark, må vi gå gjennom dem. For å bla gjennom flere ark bruker vi …

7 Eksempler på For Loops i Microsoft Excel VBA | For -loop er den mest brukte looping -teknikken på alle språk. Excel VBA er intet unntak.

Populære artikler:

50 Excel -snarveier for å øke produktiviteten | Bli raskere på oppgaven din. Disse 50 snarveiene får deg til å jobbe enda raskere med Excel.

Slik bruker du VLOOKUP -funksjonen i Excel | Dette er en av de mest brukte og populære funksjonene til excel som brukes til å slå opp verdi fra forskjellige områder og ark.

Hvordan bruke COUNTIF -funksjonen i Excel | Tell verdier med betingelser ved hjelp av denne fantastiske funksjonen. Du trenger ikke filtrere dataene dine for å telle spesifikk verdi. Countif -funksjonen er avgjørende for å forberede dashbordet.

Slik bruker du SUMIF -funksjonen i Excel | Dette er en annen viktig funksjon på dashbordet. Dette hjelper deg med å oppsummere verdier på spesifikke forhold.

Du vil bidra til utvikling av området, dele siden med vennene dine

wave wave wave wave wave