Har du nogensinde haft behov for at sende e -mail fra Excel VBA til flere e -mail -id'er, der findes i et Excel -ark? Vil du lære at sende mails fra Excel uden at åbne outlook? Denne artikel dækker, hvordan du kan automatisere outlook og sende flere e -mails med vedhæftede filer fra Excel med et enkelt klik, hvilket også holder folk i Cc og Bcc.
I sidste ende kan du også downloade filen for øjeblikkeligt at sende mænd til hundredvis af id'er. Filen indeholder makro til at sende e -mail fra excel.
Hvordan sender man mail fra Excel?
For at sende mail fra Excel skal du forstå disse VBA -uddrag.
Vigtig: Du skal have en e -mail konfigureret i Outlook -applikationen.
Tryk på F11 for at åbne VB Editor.
- Tilføj en reference til outlook -objektbibliotek:
-
-
- Gå til Værktøjer i menuen, og klik på Referencer.
-
-
- Find Microsoft 16.0 Object Library. Versionen kan være anderledes. Det er 16,0 i Excel 2016. Marker det. Og klik på OK.
-
- Opret referencer til Outlook -applikation og mail: For at få adgang til funktioner i Microsoft Outlook skal vi oprette dets objekt.
Dim outApp As Outlook.Application 'Dette vil oprette en reference til outlook -objekt. Dim outApp As Outlook.MailItem 'Dette vil oprette en reference til MailItem.
-
- Initialiser referencerne: Ovenstående referencer skal initialiseres:
Set outApp = Ny Outlook.Application Set outMail = outApp.CreateItem (0)
-
- Afsendelse af e -mail ved hjælp af outMail -objekt: Nedenfor linjer defineres kommandoen for e -mail -id, cc, bcc, emne, brødtekst, vedhæftet fil og afsendelse.
With outMail .To = "abcd.mail.com" 'Obligatorisk. Her definerer du destinations -mail -id… cc = "cc.mail.com" 'valgfri. Cc mail id hvis du vil … BCC = "bcc.mail.com" 'valgfri. Bcc mail id hvis du vil … Subject = subj 'should have. Massagen på postlegemet … Krop = besked 'valgfrit. Massagen på postkroppen … Vedhæftede filer. Tilføj "C: /exceltip.com \ test.xlsx" 'valgfri. Fuldt kvalificeret navn på vedhæftet fil … Send 'Obligatorisk, hvis du vil sende e -mail fra excel. Hvis du vil se mailen i Outlook, skal du bruge .Display -metode. Afslut med
Det er det. Det er alt hvad du behøver for at sende mail fra excel ved hjælp af VBA.
Lad os nu se et eksempel, der sender mail til hvert e -mail -id i en Excel -kolonne separat.
Scenarie:
Forestil dig, at du får et excelark, der indeholder 100 e -mail -id'er, og du skal sende en e -mail til hvert e -mail -id separat. Ikke kun dette, du skal også vedhæfte genstande. Dette ville tage dig timer, hvis du gør det manuelt. Så lad os automatisere denne forsendelsesopgave i Excel VBA.
Her har jeg disse data. I kolonne C, med titlen "Send mail til", er der flere e -mail -id'er. Jeg skal sende en e -mail til hvert e -mail -id i denne kolonne.
Til dette har jeg oprettet kolonner til Emne, Massagekrop, CC og BCC.
"Send mail til" bør ikke have nogen tom celle imellem. Alle andre kolonner kan have tomme celler. Hvis du vil
flere e -mail -id'er i til skriv derefter disse e -mail -id'er med kommaer i denne kolonne. Sørg for, at e -mail -id'er er gyldige.
Hvis du vil sende vedhæftede filer. Skriv adresser til disse filer i vedhæftede kolonne.
Skriv emnet i emnekolonnen.
Massage i Massage Kropssøjle.
Hvis du vil beholde nogen i cc, skal du skrive hans/hendes e -mail -id i CC -kolonnen. Samme for BCC. brug komma til flere e -mail -id'er.
Følg disse trin for at sende e -mails til hvert e -mail -id i kolonnen.
- Tryk på Alt+F11 for at åbne VBA Editor i Excel.
- Tilføj reference til outlook -objekt ved at følge trin, der blev fortalt tidligere.
- I et nyt modul skal du kopiere nedenstående kode.
'*** Du skal have en Outlook -e -mail konfigureret i outlook -applikation på dit system ***' *** tilføj henvisning til outook -objektbibliotek fra referencer i værktøjer *** Sub BulkMail () Application.ScreenUpdating = False ThisWorkbook.Activate ' Oprettelse af referencer til Application- og MailItem -objekter i Outlook Dim outApp As Outlook.Application Dim outMail As Outlook.MailItem 'Oprettelse af variabel til at holde værdier for forskellige postelementer Dim sendTo, subj, atchmnt, msg, ccTo, bccTo As String Dim lstRow As Long 'Mine data er på arket "Exceltip.com", du kan have ethvert arknavn. ThisWorkbook.Sheets ("Exceltip.com"). Aktiver 'Få sidste række med e -mail -id i kolonne 3. lstRow = Celler (Rows.Count, 3). End (xlUp) .Row' Variable for at holde alle e -mail -id'er Dim rng Som Range Set rng = Range ("C2: C" & lstRow) 'initialiserende outlook -objekt for at få adgang til dets funktioner Set outApp = New Outlook.Application On Error GoTo cleanup' til at håndtere enhver fejl under oprettelse af objekt. 'Loop for at gentage gennem hver række, gem data i e -mail i variabler og send' mail til hvert e -mail -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 at aflevere enhver fejl under oprettelsen af nedenstående objekt Set outMail = outApp.CreateItem (0)' Skrivning og afsendelse af mail i ny mail With outMail .To = sendTo .cc = ccTo .BCC = bccTo .Body = msg .Subject = subj .Attachments.Add atchmnt. Send 'denne afsendelsesmail uden nogen meddelelse. Hvis du vil se e -mail 'før afsendelse, skal du bruge .Display -metode. Slut med On Error GoTo 0 'For at rydde enhver tidligere registreret fejl Set outMail = Intet' ophæver outmail -objekt til næste mail Næste celle -loop slutter oprydning: 'frigørelse af alle oprettede objekter Set outApp = Nothing Application.ScreenUpdating = True Application.ScreenUpdating = True Afslut Sub
Ovenstående kode sender e -mails til hvert e -mail -id i en række med "send mail til" -kolonnen. Nu for at køre denne kode, kan du køre den direkte herfra. Eller du kan tilføje en figur eller en knap i din projektmappe og derefter tildele denne makro til det objekt. Jeg bruger former, fordi de kan tilpasses. For at gøre det, følg nedenstående trin.
-
- Gå til fanen Indsæt.
- I gruppen Illustration kan du finde figurer, klikke på din yndlingsform.
-
- Træk og slip det på dit ark.
- Forskøn, hvis du vil.
- Højreklik på den. Klik på Tildel makro.
-
- Vælg BulkMail -makro fra listen.
- Afslut fra redigeringstilstand.
Nu når du klikker på dette objekt, kører din makro og sender e -mails. Kontroller sendte mails for at sikre.
Du kan downloade Excel Mail Sender File her.
Opdel Excel -ark i flere filer baseret på kolonne ved hjælp af VBA | For at opdele et regneark i flere filer, baseret på en kolonnes værdier, skal du filtrere det kopi-indsæt det i en ny fil.
Sådan filtreres dataene i Excel ved hjælp af VBA | Filtrering af data ved hjælp af VBA er let. Disse enkle kodelinjer filtrerer dataene efter de givne kriterier.
Slå advarselsmeddelelser fra ved hjælp af VBA i Microsoft Excel 2016 | Mens du udfører flere opgaver, f.eks. Åbning og lukning af filer, viser Excel advarselsmeddelelser, så du ikke mister data. De afbryder den kørende kode. For at undgå dem
Sådan går du gennem ark i Excel ved hjælp af VBA | For at frem og tilbage på to eller flere ark skal vi gå igennem dem. For at gennemse flere ark bruger vi …
7 Eksempler på For Loops i Microsoft Excel VBA | For -loop er den mest anvendte looping -teknik på ethvert sprog. Excel VBA er ingen undtagelse.
Populære artikler:
50 Excel -genveje til at øge din produktivitet | Få hurtigere til din opgave. Disse 50 genveje får dig til at arbejde endnu hurtigere i Excel.
Sådan bruges VLOOKUP -funktionen i Excel | Dette er en af de mest anvendte og populære funktioner i excel, der bruges til at slå værdi op fra forskellige områder og ark.
Sådan bruges funktionen COUNTIF i Excel | Tæl værdier med betingelser ved hjælp af denne fantastiske funktion. Du behøver ikke filtrere dine data for at tælle specifik værdi. Countif -funktion er afgørende for at forberede dit dashboard.
Sådan bruges SUMIF -funktionen i Excel | Dette er endnu en vigtig instrumentbrætfunktion. Dette hjælper dig med at opsummere værdier på bestemte betingelser.