Exceli makro automaatse e-posti saatmiseks (3 sobivat näidet)

  • Jaga Seda
Hugh West

See õpetus näitab, kuidas kasutada excel makrot, et saata e-kiri automaatselt. Me saame konfigureerida meie postitusfunktsiooni kasutades VBA makros. Seega, kasutades VBA makro saame saata e-kirja mitmele kasutajale korraga. Meil peab olema Outlook meie seadmesse paigaldatud makroga automaatselt e-kirju saata. Kuna kood, mille me sisestame, kasutab Outlook saata e-kirju saajatele.

Lae alla praktiline töövihik

Praktilise töövihiku saate alla laadida siit.

Saada e-kiri automaatselt.xlsm

3 sobivat näidet Exceli makro kohta automaatse e-posti saatmiseks

Kogu selle artikli jooksul näitame, et 3 sobivad näited excel makro kasutamise kohta, et saata e-kiri automaatselt saajatele. Enne näite illustreerimise alustamist peame parandama ühe asja meie excel'i lehel. Enne makro automaatseks e-kirjade saatmiseks kohaldamiseks täitke alljärgnevad sammud.

SAMMUD:

  • Kõigepealt minge oma andmekogumist aadressile vahekaart Arendaja Valige valik Visual Basic .

  • Järgmisena minge Tööriistad vahekaart ja valige valik Viited .

  • Uus dialoogiboks nimega ' Viited - VBAProject ' avaneb.
  • Lõpuks kontrollige valik ' Microsoft Office 16.0 objektide raamatukogu ' ja klõpsake nupule OK .

1. Rakendage Exceli VBA makro automaatseks e-posti saatmiseks lahtri väärtuse alusel

Kõigepealt kohaldame excel'i. VBA makro, et saata automaatselt e-kiri, mis põhineb meie andmestiku teatud lahtri väärtusel. Selle näite illustreerimiseks kasutame järgmist andmestikku. Kirjutame koodi, mis saadab automaatselt e-kirja, kui lahtri väärtus lahtris D6 on suurem kui 400 .

Vaatame selle toimingu sooritamise samme.

SAMMUD:

  • Alustuseks, õigus - kliki lehel Põhineb Cell '.
  • Lisaks valige valik ' Vaata koodi '.

  • Ülaltoodud toiming avab tühja VBA selle töölehe koodiaken. Teine võimalus selle koodiakna avamiseks on vajutada nuppu Alt + F11 .
  • Peale selle sisestage sellesse koodiaknasse järgmine kood:
 Dim rg As Range Private Sub Worksheet_Change(ByVal Target As Range) On Error Resume Next If Target.Cells.Count> 1 Then Exit Sub Set rg = Intersect(Range("D6"), Target) If rg Is Nothing Then Exit Sub If IsNumeric(Target.Value) And Target.Value> 400 Then Call send_mail_outlook End If End Sub Sub send_mail_outlook() Dim z As Object Dim y As Object Dim b As String Set z =CreateObject("Outlook.Application") Set y = z.CreateItem(0) b = "Tere!" & vbNewLine & vbNewLine & _ "Loodan, et teil läheb hästi" & vbNewLine & _ "Külastage meie saiti Exceldemy" On Error Resume Next With y .To = "Address" .cc = "" .BCC = "" .Subject = "Saada post põhineb raku väärtus" .Body = b .Display End With On Error GoTo 0 Set y = Nothing Set z = Nothing End Sub 
  • Seejärel klõpsake nuppu Käivita nuppu või vajutage F5 klahviga koodi käivitamiseks.

  • Uus dialoogiboks nimega Makros ilmub.
  • Pärast seda on Makro nimi väljal valida makro ' send_mail_outlook '.
  • Nüüd klõpsake nupule Käivita nupp.

  • Lõpuks, kui lahtri väärtus lahtris D6> 400 e-kiri Outlook genereeritakse automaatselt koos konkreetsete adressaatidega. Me peame lihtsalt klõpsama Saada nuppu, et saata e-kiri.

Loe edasi: Automaatne e-posti saatmine Excelist lahtri sisu alusel (2 meetodit)

2. Automaatne e-posti saatmine VBA makroga tähtajalise kuupäeva alusel

Teise meetodi puhul kasutame Exceli VBA makro, et saata automaatselt e-kiri, kui mõne projekti tähtaeg on lähedal. See on midagi meeldetuletuse sarnast. Kasutame selle näite illustreerimiseks järgmist andmestikku. Andmestik sisaldab erinevate müüjate e-kirju, sõnumeid ja nende projekti tähtaega.

Järgige selle meetodi läbiviimiseks alljärgnevaid samme.

SAMMUD:

  • Kõigepealt tehke paremklõps lehel Kuupäev .
  • Seejärel valige valik ' Vaata koodi '.

  • See avab tühja VBA aktiivse töölehe koodiaknas. Samuti saame vajutada Alt + F11 et saada see koodiaken.
  • Seejärel sisestage sellesse koodiaknasse järgmine kood:
 Public Sub Based_on_Date() Dim aRgDate As Range Dim aRgSend As Range Dim aRgText As Range Dim aRgDone As Range Dim aOutApp As Object Dim aMailItem As Object Dim aLastRow As Long Dim CrLf As String Dim aMailBody As String Dim zRgDateVal As String Dim zRgSendVal As String Dim aMailSubject As String Dim j As Long On Error Resume Next Set aRgDate = Application.InputBox("select the column of due").date:", _ "Send Mail Base on Date", , , , , , , 8) If aRgDate Is Nothing Then Exit Sub Set aRgSend = Application.InputBox("select the email recipients column:", _ "Send Mail Base on Date", , , , , , , 8) If aRgSend Is Nothing Then Exit Sub Set aRgText = Application.InputBox("Select the content column of email:", _ "Send Mail Base on Date", , , , , , , , 8) If aRgText Is Nothing Then Exit Sub aLastRow =aRgDate.Rows.Count Set aRgDate = aRgDate(1) Set aRgSend = aRgSend(1) Set aRgText = aRgText(1) Set aOutApp = CreateObject("Outlook.Application") For j = 1 To aLastRow zRgDateVal = "" zRgDateVal = aRgDate.Offset(j - 1).Value If zRgDateVal "" Then If CDate(zRgDateVal) - Date 0 Then zRgSendVal = aRgSend.Offset(j - 1).Value aMailSubject = aRgText.Offset(j - 1).Value & " on " & zRgDateVal CrLf= " 

" aMailBody = "" aMailBody = aMailBody & "Tere " & zRgSendVal & CrLf aMailBody = aMailBody & "Message: " & aRgText.Offset(j - 1).Value & CrLf aMailBody = aMailBody & "" Set aMailItem = aOutApp.CreateItem(0) With aMailItem .Subject = aMailSubject .To = zRgSendVal .HTMLBody = aMailBody .Display End With Set aMailItem = Nothing End If End If Next Set aOutApp = Nothing EndSub

  • Nüüd kasutage Käivita nuppu või nuppu F5 klahviga koodi käivitamiseks.

  • Avaneb uus dialoogiboks.
  • Seejärel valige selle dialoogiakna sisendväljal tähtpäeva veergude vahemik D$5:$D$9 Seejärel klõpsa OK .

  • Avaneb veel üks dialoogiboks.
  • Lisaks valige sisendväljal veergude vahemik B$5:$B$9 mis sisaldab e-posti aadressid ja klõpsake OK .

  • Lisaks avaneb veel üks aken. Valige sõnumivahemik. $C$5:$C$9 hüpikakna sisendväljal.

  • Lõpptulemusena näeme järgmise pildi sarnaseid tulemusi. Saame järgmise tulemuse 3 e-kirjad, mis luuakse automaatselt 3 erinevad aknad Outlook . See ei loo posti kahele esimesele e-posti aadressile. Kuna nende kahe projekti tähtaeg on möödas.

Loe edasi: Kuidas saata Excelist automaatselt kuupäeval põhinev e-kiri

Sarnased lugemised

  • [Lahendatud]: Exceli töövihiku jagamine ei näita Excelis (lihtsate sammudega)
  • Kuidas saata e-kirju Exceli nimekirjast (2 tõhusat viisi)
  • Kuidas saata redigeeritav Exceli tabel e-posti teel (3 kiiret meetodit)
  • Makro e-posti saatmiseks Excelist (5 sobivat näidet)
  • Makro saata e-kiri Excelist koos kehaga (3 kasulikku juhtumit)

3. Kasutage Exceli makrot, et saata e-kiri automaatselt koos lisadega

Viimases näites näeme, kuidas me saame arendada excel makrot, et saata automaatselt e-kiri koos manustega. Oletame, et meil on manus järgmisel pildil. Me soovime saata selle manuse läbi e-kirja kasutades excelit VBA makro. Selleks vajame selle Exceli faili teekonda. Siin on selle jaoks vajalikud sammud:

  • Valige fail ' Lisa.xlsx ' '.
  • Klõpsake valikul ' Kopeeri tee '.

  • Niisiis, faili tee, mille me saame:
E:\Exceldemy\Attachment.xlsx

Lisame selle tee meie makrokoodi, et saata see fail e-posti teel. Järgige selleks alljärgnevaid samme.

SAMMUD:

  • Esiteks, minge Arendaja vahekaart ja valige valik Visual Basic .

  • Uus aken nimega Projekt - VBAProjekt avaneb '.
  • Teiseks, paremklikk lehe nimele.
  • Seejärel valige Sisesta > Moodul .

  • Ülaltoodud käsk avab tühja VBA
  • Kolmandaks kirjutage järgmine kood sellesse moodulisse:
 Sub send_Email_complete() Dim MyOutlook As Object Set MyOutlook = CreateObject("Outlook.Application") Dim MyMail As Object Set MyMail = MyOutlook.CreateItem(olMailItem) MyMail.To = "[email protected]" MyMail.cc = "[email protected]" MyMail.BCC = "[email protected]" MyMail.Subject = "E-maili saatmine VBAga." MyMail.Body = "See on näidispost." Attached_File = "E:\Exceldemy\Attachment.xlsx"MyMail.Attachments.Add Attached_File MyMail.send End Sub 
  • Seejärel vajutage F5 klahvi või klõpsake Käivita nuppu koodi käivitamiseks.

  • Lõpuks saadab kood manuse koodis esitatud e-kirjadele. Kood saadab e-kirju järgmiselt Outlook Nii et klõpsa Luba nuppu, et lasta Outlook saata manus antud e-kirjadele.

Loe edasi: Kuidas rakendada makrot, et saata Excelist koos manusega e-kiri

Kokkuvõte

Kokkuvõttes näitab käesolev artikkel 3 näited excel'i kasutamise kohta VBA makro, et saata posti automaatselt. Laadige alla selles artiklis toodud näidistööleht, et oma oskusi proovile panna. Kui teil on küsimusi, siis jätke kommentaar allpool olevasse lahtrisse. Meie meeskond püüab teie sõnumile vastata nii kiiresti kui võimalik. Hoidke silm peal, et leida veel rohkem leidlikke Microsoft Excel lahendusi tulevikus.

Hugh West on suurte kogemustega Exceli koolitaja ja analüütik, kellel on selles valdkonnas üle 10-aastane kogemus. Tal on raamatupidamise ja rahanduse bakalaureusekraad ning ärijuhtimise magistrikraad. Hugh’l on kirg õpetamise vastu ning ta on välja töötanud ainulaadse õpetamisviisi, mida on lihtne järgida ja mõista. Tema Exceli ekspertteadmised on aidanud tuhandetel õpilastel ja spetsialistidel üle maailma oma oskusi parandada ja karjääris silma paista. Oma ajaveebi kaudu jagab Hugh oma teadmisi maailmaga, pakkudes tasuta Exceli õpetusi ja veebikoolitusi, mis aitavad üksikisikutel ja ettevõtetel oma potentsiaali täielikult ära kasutada.