Sisällysluettelo
Tässä artikkelissa näytämme sinulle 5 Makro osoitteeseen lähetä sähköpostia osoitteesta Excel Menetelmiemme demonstroimiseksi olemme valinneet tietokokonaisuuden, jossa on 3 saraketta : " Nimi ", " Sähköposti ", ja " Kaupunki ".
Lataa harjoituskirja
Käyttämällä makro lähettää Email.xlsm5 tapaa käyttää makroa sähköpostin lähettämiseen Excelistä
1. Outlookin objektikirjaston käyttö sähköpostin lähettämiseen
Ensimmäisen Makro , otamme käyttöön " Microsoft Outlook 16.0 Objektikirjasto " to lähetä osoitteessa sähköpostiosoite osoitteesta Excel Lisäksi meidän on kirjauduttava sisään meidän Outlook tili Excel .
Vaiheet:
Aluksi tuomme esiin Visual Basic ikkuna.
- Ensinnäkin Kehittäjä Valitse... Visual Basic .
Vaihtoehtoisesti voit painaa ALT + F11 näyttääksesi VBA ikkuna.
- Toiseksi, alkaen Työkalut >>> valitse " Viitteet... ".
Uusi valintaikkuna ilmestyy.
- Kolmanneksi valitse " Microsoft Outlook 16.0 Objektikirjasto ", ja paina OK .
Näin ollen mahdollistamme Outlookin objektikirjasto .
- Heiltä Lisää Valitse... Moduuli .
Kirjoitamme koodimme tähän.
- Kirjoita sen jälkeen seuraava koodi.
Sub Macro_Send_Email() Dim eApp As Outlook.Application Dim eSource As String Set eApp = New Outlook.Application Dim eItem As Outlook.MailItem Set eItem = eApp.CreateItem(olMailItem) eItem.To = Range("C5").Value 'Nämä kohteet ovat valinnaisia 'eItem.CC = "[email protected]" 'etem.BCC = "[email protected]" eItem.Subject = "Sähköpostin lähettäminen VBA:lla Excelistä" eItem.Body = "Hei," & vbNewLine &"Toivottavasti tämä sähköposti löytää sinut hyvin." & _ vbNewLine & vbNewLine & _ "Ystävällisin terveisin," & vbNewLine & "Exceldemy" 'Jos haluat liittää tämän työkirjan, poista kommentit näiltä kahdelta riviltä alta 'Source = ThisWorkbook.FullName 'eItem.Attachments.Add Source eItem.Display 'voi käyttää .Send End Sub
VBA-koodin erittely
- Ensinnäkin kutsumme Alimenettely Makro_Send_Email .
- Toiseksi, julistamme muuttuja tyypit.
- Kolmanneksi valitsemme Outlook kuten meidän Posti Hakemus .
- Sitten valitsemme sähköpostiosoite lähetysosoite osoitteesta solu C5 .
- Sen jälkeen sähköpostiosoite sisältö on asetettu koodissamme.
- Lopuksi " VBA:n näyttöominaisuus " käytetään tässä näyttämään meidän sähköpostiosoite . Siksi meidän on painettava Lähetä manuaalisesti lähetä ... sähköpostit Lisäksi voimme käyttää " Lähetä ominaisuus " to lähettää sähköposteja näyttämättä.
- Sen jälkeen, Tallenna ja sulje Moduuli .
Nyt me Suorita koodi.
- Ensinnäkin Kehittäjä Valitse... Makrot .
The Makro-valintaikkuna ilmestyy.
- Toiseksi, valitse meidän Alimenettely " Makro_Send_Email ".
- Paina lopuksi Suorita .
Kun koodi on suoritettu, näemme koodin sähköpostiosoite ikkunassa. Voimme klikata Lähetä . Näin ollen olemme näyttäneet teille ensimmäisen menetelmän. lähettäminen osoitteessa sähköpostiosoite osoitteesta Excel käyttämällä VBA .
Lue lisää: Lähetä sähköpostia Excel VBA ilman Outlookia (4 sopivia esimerkkejä)
2. Makro sähköpostin lähettämiseen Gmail-tililtä Excelissä
Tätä menetelmää varten tarvitaan turvattomampi pääsy sovelluksiin alkaen Gmail Lisäksi meidän täytyy ottaa käyttöön Microsoft CDO alkaen Viitteet valikko.
Vaiheet:
- Ensinnäkin, kuten ensimmäisessä menetelmässä on esitetty , tuo esiin Viitteet-valintaikkuna .
- Toiseksi, valitse " Microsoft CDO for Windows 2000 -kirjasto " ja paina OK .
- Kolmanneksi, mene osoitteeseen Turvallisuus teidän Google-tilin asetukset .
- Kytke lopuksi päälle Turvattomampi sovelluskäyttö .
Nyt syötämme Makro koodi.
- Ensinnäkin, menetelmän 1 mukaisesti , tuo esiin Moduuli ja kirjoita tämä koodi.
Option Explicit Sub Send_Gmail_Macro() Dim cMail As Object Dim cConfig As Object Dim sConfig As Variant Dim cSubject As String Dim cFrom As String Dim cTo As String Dim cCC As String Dim cBcc As String Dim cBody As String cSubject = "Makro Gmailin lähettämiseen" cFrom = "[email protected]" cTo = "[email protected]" cBody = "Hei. Tämä on automaattinen viesti. Älä vastaa" Set cMail =CreateObject("CDO.Message") On Error GoTo Error_Handling Set cConfig = CreateObject("CDO.Configuration") cConfig.Load -1 Set sConfig = cConfig.Fields With sConfig .Item("//schemas.microsoft.com/cdo/configuration/sendusing") = 2 .Item("//schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.gmail.com" .Item("//schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1.Item("//schemas.microsoft.com/cdo/configuration/sendername") = "[email protected]" .Item("//schemas.microsoft.com/cdo/configuration/sendpassword") = "SenderGmailPassword" .Item("//schemas.microsoft.com/cdo/configuration/smtpserverport") = 465 .Item("//schemas.microsoft.com/cdo/configuration/smtpusessl") = True .Update End With With With cMail Aseta .Konfiguraatio = cConfig End With cMail.Subject =cSubject cMail.From = cFrom cMail.To = cTo cMail.TextBody = cBody cMail.CC = cCC cMail.BCC = cBcc cMail.Send Error_Handling: If Err.Description "" Then MsgBox Err.Description End Sub
VBA-koodin erittely
- Ensinnäkin kutsumme Alimenettely Lähetä_Gmail_Macro .
- Toiseksi, julistamme muuttuja tyypit.
- Kolmanneksi, asetamme sähköpostiosoite sisältöä koodissamme.
- Sitten tarjoamme kirjautumistiedot . Sinun on kirjoitettava oma ID ja Salasana täällä.
- Sen jälkeen olemme lähteneet liikkeelle satama osoitteeseen 465 .
- Lopuksi, me olemme lähettäminen meidän sähköpostiosoite .
- Sitten, Tallenna ja Suorita tämä koodi.
Olemme menestyksekkäästi lähetetty osoitteessa sähköpostiosoite osoitteeseemme.
Lue lisää: Makro sähköpostin lähettämiseen Excelistä rungon kanssa (3 käyttökelpoista tapausta)
3. Lähetä sähköpostia vastaanottajaluetteloon sarakkeesta käsin.
Kolmatta menetelmää varten käytämme lähettää sähköposteja osoitteeseen 7 ihmiset käyttävät Makro osoitteesta Excel . Löydämme viimeisen rivi tietokokonaisuudestamme, joten koodimme toimii pidemmälle listalle. Me tulemme lähettää sähköposteja alkaen solu C5:C10 alue.
Vaiheet:
- Ensinnäkin, menetelmän 1 mukaisesti , tuo esiin Moduuli ja kirjoita tämä koodi.
Sub Macro_Send_Email_From_A_List() Dim pApp As Object Dim pMail As Object Dim z As Integer Dim eList As String Dim eRow As Long Set pApp = CreateObject("Outlook.Application") Set pMail = pApp.CreateItem(0) eRow = Range("C:C").SpecialCells(xlCellTypeLastCell).Row - 1 With pMail eList = "" For z = 5 To eRow If eList = "" Then eList = Cells(z, 3).Value Else eList = eList & ";" & Cells(z,3).Value End If Next z .BCC = eList .Subject = "Hei" .Body = "Tämän viestin sinulle tuo Exceldemy." .Display 'Voit käyttää .Send tässä End With Set pMail = Nothing Set pApp = Nothing End Sub
VBA-koodin erittely
- Ensinnäkin kutsumme Alimenettely Makro_Send_Email_From_A_List .
- Toiseksi, julistamme muuttuja tyypit.
- Kolmanneksi valitsemme Outlook kuten meidän Posti Hakemus .
- Sitten löydämme viimeinen rivi , joka on 10 tietokokonaisuutemme osalta.
- Sen jälkeen, kun meidän sähköpostiosoite alkaa rivi 5 olemme syöttäneet 5 lähtöarvona " muuttuja z ". Lisäksi meidän sähköpostit ovat C-pylväs , joten olemme syöttäneet 3 sisällä Solut omaisuus.
- Sitten asetamme sähköpostiosoite sisältöä koodissamme.
- Lopuksi " .display " käytetään tässä näyttämään meidän sähköpostiosoite . Siksi meidän on painettava Lähetä manuaalisesti lähetä ... sähköpostit Lisäksi voimme käyttää " .lähetä " to lähetä sähköpostia näyttämättä.
- Sitten, Tallenna ja Suorita ... Moduuli .
Voimme nähdä, että kaikki meidän sähköpostit näytetään BCC Lopuksi voimme yksinkertaisesti painaa Lähetä tehtävämme loppuun saattamiseksi.
Lue lisää: Kuinka lähettää sähköpostia Excel-luettelosta (2 tehokasta tapaa)
Samanlaisia lukemia
- Kuinka lähettää sähköpostia automaattisesti, kun ehto täyttyy Excelissä
- Excel-tiedoston jakaminen verkossa (2 helppoa menetelmää)
- Lähetä muistutussähköposti automaattisesti Excel-taulukosta VBA:n avulla
- Kuinka lähettää sähköpostia, jos ehdot täyttyvät Excelissä (3 helppoa menetelmää)
- Kuinka ottaa työkirjan jakaminen käyttöön Excelissä
4. Makro lähettää yksittäisen arkin sähköpostitse
Tässä jaksossa me lähetä ... Aktiivinen laskentataulukko kohdehenkilöllemme. Tässä meidän on valittava sijainti, jossa meidän Excel tiedosto.
Vaiheet:
- Ensinnäkin, menetelmän 1 mukaisesti , tuo esiin Moduuli ja kirjoita tämä koodi.
Sub Macro_Email_Single_Sheet() Dim pApp As Object Dim pMail As Object Dim zBook As Workbook Dim fxName As String 'Dim zSheet As Worksheet 'Dim shtName As String Application.ScreenUpdating = False ActiveSheet.Copy Set zBook = ActiveWorkbook fxName = zBook.Worksheets(1).Name On Error Resume Next Kill "C:\Users\Rafi\OneDrive \Desktop\Softeko\47\\" & fxName On Error GoTo 0 zBook.SaveAsFileName:="C:\Users\Rafi\OneDrive\Desktop\Softeko\47\" & fxName Set pApp = CreateObject("Outlook.Application") Set pMail = pApp.CreateItem(0) With pMail .To = "[email protected]" .Subject = "Makro yksittäisen arkin lähettämiseen sähköpostitse" .Body = "Hyvä vastaanottajan nimi," & vbCrLf & vbCrLf & _ "Pyytämänne tiedosto on liitetiedostona" .Attachments.Add zBook.FullName .Display End WithzBook.ChangeFileAccess Mode:=xlReadOnly Kill zBook.FullName zBook.Close SaveChanges:=False Application.ScreenUpdating = True Set pMail = Nothing Set pApp = Nothing End Sub
VBA-koodin erittely
- Ensinnäkin kutsumme Alimenettely Macro_Email_Single_Sheet .
- Toiseksi, julistamme muuttuja tyypit.
- Kolmanneksi, kopioimme Aktiivinen arkki ja tallentaa sen erillisenä Työkirja .
- Sen jälkeen valitsemme Outlook kuten meidän Posti Hakemus .
- Sitten asetamme sähköpostiosoite sisältöä koodissamme.
- Sen jälkeen olemme liittäneet Arkki ...ja... sähköpostiosoite .
- Käytä lopuksi " .display " näyttääksesi meidän sähköpostiosoite . Siksi meidän on painettava Lähetä manuaalisesti lähetä ... sähköpostit Lisäksi voimme käyttää " .lähetä " to lähetä sähköpostia näyttämättä.
- Sitten, Tallenna ja Suorita ... Moduuli .
Näemme Arkki nimi ikkunassa. Paina Lähetä tehtävän suorittamiseksi.
Me voimme avoin tiedosto ja varmista, että koodimme toimii.
Lue lisää: Muokattavan Excel-taulukon lähettäminen sähköpostitse (3 nopeaa menetelmää)
5. Makro sähköpostin lähettämiseen solun arvon perusteella
Viimeistä menetelmää varten olemme muuttaneet tietokantaamme hieman. Olemme lisänneet " Maksu Due " sarake tässä yhteydessä, me teemme lähetä osoitteessa sähköpostiosoite joka sisältää kaupungin " Obama ". Voimme selvästi nähdä, että rivi 5 sisältää sen, joten me aiomme lähetä osoitteessa sähköpostiosoite vain kyseiselle henkilölle.
Vaiheet:
- Ensinnäkin, menetelmän 1 mukaisesti , tuo esiin Moduuli ja kirjoita tämä koodi.
Option Explicit Sub Send_Email_Condition() Dim xSheet As Worksheet Dim mAddress As String, mSubject As String, eName As String Dim eRow As Long, x As Long Set xSheet = ThisWorkbook.Sheets("Conditions") With xSheet eRow = .Cells(.Rows.Count, 5).End(xlUp).Row For x = 5 To eRow If .Cells(x, 4)>= 1 And .Cells(x, 5) = "Obama" Then mAddress = .Cells(x, 3) mSubject = "Maksupyyntö" eName =.Cells(x, 2) Call Send_Email_With_Multiple_Condition(mAddress, mSubject, eName) End If Next x End With End Sub Send_Email_With_Multiple_Condition(mAddress As String, mSubject As String, eName As String) Dim pApp As Object Dim pMail As Object Set pApp = CreateObject("Outlook.Application") Set pMail = pApp.CreateItem(0) With pMail .To = mAddress .CC = "" .BCC = "" .Subject = mSubject .Body ="Mr./Mrs. " & eName & ", Maksakaa erääntynyt summa seuraavan viikon aikana." _ & vbNewLine & "Tarkka summa on tämän sähköpostin liitteenä." .Attachments.Add ActiveWorkbook.FullName 'Lähetä tiedosto sähköpostitse .Display 'Voimme käyttää .Send myös tässä End With Set pMail = Nothing Set pApp = Nothing End Sub
VBA-koodin erittely
- Ensinnäkin, kutsumme ensimmäistä Alimenettely Send_Email_Condition .
- Toiseksi, julistamme Muuttuva tyypit ja asetukset " Ehdot " meidän Arkki .
- Kolmanneksi viimeinen rivi Lisäksi arvomme alkaa arvosta rivi 5 , joten olemme laittaneet rivi 5 viimeiseen rivi koodissamme.
- Kutsu sitten toista Alimenettely Send_Email_With_Multiple_Condition (Lähetä_Sähköposti_Monella_Ehdolla) .
- Sen jälkeen valitsemme Outlook kuten meidän Posti Hakemus .
- Sitten sähköpostiosoite sisältö on asetettu koodissamme.
- Tässä kiinnitämme Excel tiedosto, jossa on sähköpostiosoite käyttämällä Liite menetelmä.
- Sen jälkeen " .display " käytetään tässä näyttämään meidän sähköpostiosoite . Siksi meidän on painettava Lähetä manuaalisesti lähetä ... sähköpostit Lisäksi voimme käyttää " .lähetä " to lähetä sähköpostia näyttämättä.
- Sitten, Tallenna ja Suorita ... Moduuli .
Lopuksi, olemme näyttäneet sinulle vielä toisen menetelmän lähettäminen osoitteessa sähköpostiosoite käyttämällä VBA-makro osoitteesta Excel .
Lue lisää: Lähetä automaattisesti sähköposteja Excelistä solun sisällön perusteella (2 menetelmää)
Harjoitusosio
Olemme lisänneet harjoitustietoaineistoja jokaista menetelmää varten osoitteessa Excel tiedosto.
Päätelmä
Olemme näyttäneet sinulle 5 käytettävät menetelmät Makro osoitteeseen lähetä osoitteessa sähköpostiosoite osoitteesta Excel . Kiitos lukemisesta, jatka loistavaa työtä!