Bulk-e-mails verzenden vanuit Excel VBA met één klik in Excel

Anonim

Ooit behoefte gehad om e-mail te verzenden vanuit Excel VBA naar meerdere e-mail-ID's, geleverd in een Excel-blad? Wilt u leren hoe u e-mails kunt verzenden vanuit Excel zonder Outlook te openen? Dit artikel behandelt hoe u Outlook kunt automatiseren en met één klik meerdere e-mails met bijlagen vanuit Excel kunt verzenden, zodat mensen ook in Cc en Bcc blijven.

Uiteindelijk kun je het bestand ook downloaden om mannen direct naar honderden id's te sturen. Het bestand bevat macro om e-mail te verzenden vanuit Excel.

Hoe e-mail verzenden vanuit Excel?
Om e-mail te verzenden vanuit Excel, moet u deze VBA-fragmenten begrijpen.

Belangrijk: U moet een e-mail hebben geconfigureerd in de Outlook-toepassing.

Druk op F11 om VB Editor te openen.

  • Voeg een verwijzing naar de Outlook-objectbibliotheek toe:
      • Ga naar Tools in het menu en klik op References.

    • Zoek Microsoft 16.0 Objectbibliotheek. De versie kan anders zijn. Het is 16,0 in Excel 2016. Vink het aan. En klik op OK.

    • Maak referenties van Outlook-toepassing en e-mail: Om nu toegang te krijgen tot functies van Microsoft Outlook, moeten we het object ervan maken.
Dim outApp As Outlook.Application 'Hiermee wordt een verwijzing naar het Outlook-object gemaakt. Dim outApp As Outlook.MailItem 'Hiermee wordt een verwijzing naar MailItem gemaakt. 
    • Initialiseer de referenties: De bovenstaande referenties moeten worden geïnitialiseerd:
Set outApp = Nieuwe Outlook.Application Set outMail = outApp.CreateItem (0)
    • E-mail verzenden met outMail-object: De onderstaande regels definiëren de doelmail-ID, cc, bcc, onderwerp, hoofdtekst, bijlage en verzendopdracht.
Met outMail .To = "abcd.mail.com" 'Verplicht. Hier definieert u de bestemmings-e-mail-id… cc = "cc.mail.com" 'optioneel. Cc mail id als je wilt… BCC = "bcc.mail.com" 'optioneel. Bcc-e-mail-ID als je wilt … Onderwerp = subj 'zou moeten hebben. De massage op postlichaam… Lichaam = msg 'optioneel. De massage op mail body… Bijlagen.Toevoegen "C:/exceltip.com\test.xlsx" 'optioneel. Volledig gekwalificeerde naam van bijlage… Verzenden 'Verplicht als u e-mail wilt verzenden vanuit Excel. U wilt de e-mail in Outlook zien, gebruik de .Display-methode. Eindigt met 

Dat is het. Het is alles wat je nodig hebt om e-mail te verzenden vanuit Excel met VBA.

Laten we nu een voorbeeld bekijken dat e-mail naar elke e-mail-ID in een Excel-kolom afzonderlijk verzendt.

Scenario:
Stel je voor, je krijgt een Excel-blad met 100 e-mail-ID's en je moet een e-mail naar elk e-mail-ID afzonderlijk sturen. Niet alleen dit, u moet ook items bevestigen. Dit zou u uren kosten als u het handmatig doet. Laten we deze mailingtaak dus automatiseren in Excel VBA.

Hier heb ik deze gegevens. In kolom C, getiteld "E-mail verzenden naar", staan ​​verschillende e-mail-ID's. Ik moet een e-mail sturen naar elke e-mail-ID in deze kolom.
Hiervoor heb ik kolommen gemaakt voor Onderwerp, Massagelichaam, CC en BCC.

De "E-mail verzenden naar" mag geen lege cel ertussen hebben. Alle andere kolommen kunnen lege cellen bevatten. Als je wilt
meerdere e-mailadressen in tot schrijf dan die e-mail-ID's met komma's in deze kolom. Zorg ervoor dat e-mail-ID's geldig zijn.

Als u bijlagen wilt verzenden. Schrijf de adressen van die bestanden in de bijlagekolom.

Schrijf het onderwerp in de kolom Onderwerp.

Massage in kolom Massage Lichaam.

Als je iemand in cc wilt houden, schrijf dan zijn/haar e-mailadres in de CC-kolom. Idem voor BCC. gebruik een komma voor meerdere e-mail-ID's.

Volg nu deze stappen om e-mails naar elke e-mail-ID in de kolom te verzenden.

  • Druk op Alt + F11 om VBA-editor in Excel te openen.
  • Voeg een verwijzing naar het Outlook-object toe door de eerder beschreven stappen te volgen.
  • Kopieer de onderstaande code in een nieuwe module.
'*** U moet een Outlook-e-mail hebben geconfigureerd in Outlook-toepassing op uw systeem *** '*** voeg verwijzing toe aan outook-objectbibliotheek vanuit verwijzingen in hulpprogramma's *** Sub BulkMail() Application.ScreenUpdating = False ThisWorkbook.Activate ' Verwijzingen maken naar Application en MailItem Objecten van Outlook Dim outApp As Outlook.Application Dim outMail As Outlook.MailItem 'Variabele maken om waarden van verschillende e-mails vast te houden Dim sendTo, subj, atchmnt, msg, ccTo, bccTo As String Dim lstRow As Long 'Mijn gegevens staan ​​op blad "Exceltip.com" u kunt elke bladnaam hebben. ThisWorkbook.Sheets("Exceltip.com").Activeer 'Laatste rij met e-mail-ID ophalen in kolom 3. lstRow = Cells(Rows.Count, 3)).End(xlUp).Row 'Variabele om alle e-mail-ID's te bewaren Dim rng As Range Set rng = Range("C2:C" & lstRow) 'initialiseert Outlook-object om toegang te krijgen tot zijn functies Set outApp = New Outlook.Application On Error GoTo cleanup 'om elke fout tijdens het maken van het object af te handelen. 'Loop om elke rij te doorlopen, bewaar gegevens van e-mail in variabelen en stuur 'mail naar elke e-mail-ID. Voor elke cel In rng sendTo = Range(cell.Address).Offset(0, 0).Waarde2 subj = Range(cell.Address).Offset(0, 1).Waarde2 & "-MS" msg = Range(cell.Address). Adres).Offset(0, 2).Waarde2 atchmnt = Range(cell.Address).Offset(0, -1).Waarde2 ccTo = Range(cell.Address).Offset(0, 3).Waarde2 bccTo = Range( cell.Address).Offset(0, 4).Value2 On Error Resume Next 'om een ​​fout te overhandigen tijdens het maken van het onderstaande object Set outMail = outApp.CreateItem(0) 'E-mail schrijven en verzenden in nieuwe e-mail With outMail .To = sendTo .cc = ccTo .BCC = bccTo .Body = msg .Subject = subj .Attachments.Add atchmnt .Send 'deze e-mail verzenden zonder enige kennisgeving. Als je mail wilt zien voordat je het verzendt, gebruik dan de .Display-methode. End With On Error GoTo 0 'Om een ​​eerder vastgelegde fout op te schonen Set outMail = Niets 'vernietiging van het outmail-object voor de volgende e-mail Volgende cel 'loop beëindigt opschonen:' alle gemaakte objecten vrijgeven Set outApp = Niets Application.ScreenUpdating = True Application.ScreenUpdating = True Einde sub 

De bovenstaande code stuurt e-mails naar elke e-mail-ID in een rij van de kolom 'mail verzenden naar'. Om deze code nu uit te voeren, kunt u deze direct vanaf hier uitvoeren. Of u kunt een figuur of knop in uw werkmap toevoegen en vervolgens deze macro aan dat object toewijzen. Ik gebruik vormen omdat ze aanpasbaar zijn. Om dit te doen, volg de onderstaande stappen.

    • Ga naar het tabblad Invoegen.
    • In de groep Illustratie vind je vormen, klik op je favoriete vorm.

    • Sleep het naar je blad en zet het neer.
    • Verfraai als je wilt.
    • Klik er met de rechtermuisknop op. Klik op Macro toewijzen.

    • Kies BulkMail-macro uit de lijst.

  • Verlaat de bewerkingsmodus.

Wanneer u nu op dit object klikt, wordt uw macro uitgevoerd en e-mails verzonden. Controleer verzonden e-mails om er zeker van te zijn.
U kunt Excel Mail Sender File hier downloaden.

Verzend bulk-e-mails vanuit Excel VBA in één klik

Excel-blad splitsen in meerdere bestanden op basis van kolom met behulp van VBA | Als u een werkblad in meerdere bestanden wilt splitsen op basis van de waarden van een kolom, moet u het filteren, kopiëren en plakken in een nieuw bestand.

Hoe de gegevens in Excel te filteren met VBA | Gegevens filteren met VBA is eenvoudig. Deze eenvoudige coderegels filteren de gegevens op de gegeven criteria.

Schakel waarschuwingsberichten uit met VBA in Microsoft Excel 2016 | Tijdens het uitvoeren van meerdere taken, zoals het openen en sluiten van bestanden, toont Excel waarschuwingsberichten zodat u geen gegevens verliest. Ze onderbreken de lopende code. Om ze te vermijden

Hoe u door bladen in Excel kunt bladeren met VBA | Om op twee of meer vellen heen en weer te gaan, moeten we er doorheen lopen. Om door meerdere bladen te bladeren, gebruiken we …

7 voorbeelden van For-lussen in Microsoft Excel VBA | De for-lus is de meest gebruikte looptechniek in elke taal. Excel VBA is geen uitzondering.

Populaire artikels:

50 Excel-snelkoppelingen om uw productiviteit te verhogen | Word sneller in uw taak. Met deze 50 sneltoetsen werk je nog sneller in Excel.

Hoe de VERT.ZOEKEN-functie in Excel te gebruiken | Dit is een van de meest gebruikte en populaire functies van Excel die wordt gebruikt om waarde op te zoeken uit verschillende bereiken en bladen.

Hoe de AANTAL.ALS-functie in Excel te gebruiken | Tel waarden met voorwaarden met behulp van deze geweldige functie. U hoeft uw gegevens niet te filteren om een ​​specifieke waarde te tellen. Countif-functie is essentieel om uw dashboard voor te bereiden.

Hoe de SUMIF-functie in Excel te gebruiken | Dit is een andere essentiële functie van het dashboard. Dit helpt u bij het optellen van waarden voor specifieke voorwaarden.