Kuidas saata kirju Exceli arvutustabelist, kasutades VBA skripte

Kuidas saata kirju Exceli arvutustabelist, kasutades VBA skripte

Microsoft Excelist e -kirjade saatmiseks on vaja vaid mõnda lihtsat skripti. Lisage see funktsioon oma arvutustabelitele ja saate tõsta, kui palju saate Excelis saavutada.





Oleme käsitlenud palju suurepäraseid Exceli makrosid, mis suudavad teha samu asju, mida VBA skriptid, kuid ilma programmeerimisteadmisteta. Kuid on palju täiustatud asju, mida saate teha ainult VBA -ga, näiteks arvutustabeli aruande loomine kogu arvutiteabega.





Kas soovite seda õpetust vaadata videona? Meil on teid kaetud!





Miks saata Excelist e -kirju?

On palju põhjuseid, miks soovite saata e -kirja Microsoft Excelist.

Võib -olla on teil töötajaid, kes uuendavad iganädalaselt dokumente või arvutustabeleid, ja soovite saada meiliteatist nende värskenduste lõpetamise kohta. Või on teil kontaktide arvutustabel ja soovite saata neile kõigile ühe meili korraga.



Tõenäoliselt arvate, et Excelist saadetud e -posti skriptimine läheb keeruliseks. See pole üldse nii.

Selle artikli tehnikas kasutatakse funktsiooni, mis on Excel VBA -s juba pikka aega saadaval olnud, Koostööandmete objektid (CDO).





CDO on sõnumikomponent, mida kasutati Windowsis alates operatsioonisüsteemi väga varasest põlvkonnast. Varem nimetati seda CDONTSiks ja seejärel asendati Windows 2000 ja XP tulekuga sõna „CDO for Windows 2000”. See komponent on juba lisatud teie Microsoft Wordi või Exceli VBA installimisse ja on kasutamiseks valmis.

Komponendi kasutamine muudab VBA -ga e -kirjade saatmise Windowsi toodetest äärmiselt lihtsaks. Selles näites kasutate Excelis CDO komponenti e -kirja saatmiseks, mis edastab tulemused konkreetsest Exceli lahtrist.





Samm: looge VBA makro

Esimene samm on minna vahekaardile Exceli arendaja.

Klõpsake vahekaardil Arendaja nuppu Sisesta kastis Juhtnupud ja seejärel valige käsunupp.

Joonistage see lehele ja seejärel looge sellele uus makro, klõpsates nuppu Makrod arendaja lindil.

Kui klõpsate nupul Loo nuppu, avab see VBA redaktori.

Lisage viide CDO teeki, navigeerides aadressile Tööriistad > Viited toimetajas.

Kerige loendit allapoole, kuni leiate Microsofti CDO Windows 2000 kogu jaoks . Märkige ruut ja klõpsake Okei .

Kui klõpsate Okei , märkige üles selle funktsiooni nimi, kuhu skripti kleebite. Teil on seda hiljem vaja.

2. samm: seadistage CDO väljad „From” ja „To”

Selleks peate esmalt looma e -posti objektid ja seadistama kõik väljad, mis on vajalikud e -kirja saatmiseks.

Pidage meeles, et kuigi paljud väljad on valikulised, siis Alates ja To väljad on kohustuslikud.

kuidas oma seeria snapchatis tagasi saada
Dim CDO_Mail As Object
Dim CDO_Config As Object
Dim SMTP_Config As Variant
Dim strSubject As String
Dim strFrom As String
Dim strTo As String
Dim strCc As String
Dim strBcc As String
Dim strBody As String
strSubject = 'Results from Excel Spreadsheet'
strFrom = 'rdube02@gmail.com'
strTo = 'rdube02@gmail.com'
strCc = ''
strBcc = ''
strBody = 'The total results for this quarter are: ' & Str(Sheet1.Cells(2, 1))

Selle lahe asi on see, et saate luua mis tahes stringi, mida soovite täieliku meilisõnumi kohandamiseks, ja määrata selle aadressile strBody muutuja.

Ühendage sõnumi komponendid, kasutades & string, et sisestada andmed mis tahes Microsoft Exceli lehtedelt otse meilisõnumisse, nagu ülal näidatud.

Samm: konfigureerige CDO kasutama välist SMTP -d

Järgmine koodi jaotis on koht, kus konfigureerite CDO -d kasutama e -kirja saatmiseks mis tahes välist SMTP -serverit.

See näide on Gmaili kaudu mitte-SSL-i seadistus. CDO on võimeline SSL -i, kuid see jääb selle artikli reguleerimisalast välja. Kui teil on vaja SSL -i kasutada, tehke seda täiustatud kood Githubis saab aidata.

Set CDO_Mail = CreateObject('CDO.Message')
On Error GoTo Error_Handling
Set CDO_Config = CreateObject('CDO.Configuration')
CDO_Config.Load -1
Set SMTP_Config = CDO_Config.Fields
With SMTP_Config
.Item('http://schemas.microsoft.com/cdo/configuration/sendusing') = 2
.Item('http://schemas.microsoft.com/cdo/configuration/smtpserver') = 'smtp.gmail.com'
.Item('http://schemas.microsoft.com/cdo/configuration/smtpauthenticate') = 1
.Item('http://schemas.microsoft.com/cdo/configuration/sendusername') = 'email@website.com'
.Item('http://schemas.microsoft.com/cdo/configuration/sendpassword') = 'password'
.Item('http://schemas.microsoft.com/cdo/configuration/smtpserverport') = 25
.Item('http://schemas.microsoft.com/cdo/configuration/smtpusessl') = True
.Update
End With
With CDO_Mail
Set .Configuration = CDO_Config
End With

Samm: viige CDO seadistamine lõpule

Nüüd, kui olete konfigureerinud ühenduse SMTP -serveriga e -kirja saatmiseks, peate täitma ainult vastavad väljad CDO_Mail objekt ja väljastage Saada käsk.

Seda saate teha järgmiselt.

CDO_Mail.Subject = strSubject
CDO_Mail.From = strFrom
CDO_Mail.To = strTo
CDO_Mail.TextBody = strBody
CDO_Mail.CC = strCc
CDO_Mail.BCC = strBcc
CDO_Mail.Send
Error_Handling:
If Err.Description '' Then MsgBox Err.Description

Ei kuvata hüpikaknaid ega turvasõnumeid, mis võivad juhtuda, kui kasutate Outlooki e-posti objekti.

CDO paneb lihtsalt e -kirja kokku ja kasutab sõnumi käivitamiseks teie SMTP -serveri ühenduse üksikasju. See on lihtsaim viis lisada e -kirju Microsoft Wordi või Exceli VBA skriptidesse.

Oma käsunupu ühendamiseks selle skriptiga minge koodiredaktorisse ja klõpsake nuppu Leht1 selle töölehe VBA koodi vaatamiseks.

Sisestage selle funktsiooni nimi, kuhu ülal skripti kleepisite.

see inimene proovis teie telefoni avada

Sõnum nägi välja selline, nagu ma oma postkasti sain:

Märge : Kui kuvatakse tõrketeade Transpordil ei õnnestunud serveriga ühendust luua , veenduge, et sisestasite alltoodud koodireale õige kasutajanime, parooli, SMTP -serveri ja pordi numbri SMTP_Config abil .

Võtke see kaugemale ja automatiseerige kogu protsess

Kõik on hästi ja hea, kui saate Excelist e -kirju ühe nupuvajutusega saata. Siiski võiksite seda funktsiooni regulaarselt kasutada, sel juhul oleks mõttekas protsessi automatiseerida.

Selleks peate makro muutma. Minge Visual Basic Editori ja kopeerige ja kleepige kogu kood, mille me kokku panime.

Järgmisena valige See tööraamat alates Projekt hierarhia.

Valige kahest akna ülaosas olevast rippmenüüst välja Töövihik ja valige Avatud rippmenüüst Meetodid.

Kleepige ülaltoodud e -posti skript Privaatne alamtöövihik_Avatud () .

See käivitab makro iga kord, kui avate Exceli faili.

Järgmisena avage Ülesannete planeerija .

Kasutate seda tööriista, et paluda Windowsil arvutustabel korrapäraste ajavahemike järel automaatselt avada, mille järel teie makro käivitatakse ja see meil saadetakse.

Valige Loo põhiülesanne ... alates Tegevus menüüst ja toimige viisardist läbi, kuni jõuate Tegevus ekraan.

Valige Käivitage programm ja klõpsake Edasi .

Kasuta Sirvi Microsoft Exceli asukoha leidmiseks arvutis või kopeerige ja kleepige tee Programm/skript valdkonnas.

Seejärel sisestage oma Microsoft Exceli dokumendi tee kausta Lisage argumente valdkonnas.

Viige viisard lõpule ja teie ajakava on paigas.

Tasub test läbi viia, planeerides toimingu tulevikus paariks minutiks, seejärel muutke ülesannet, kui saate veenduda, et see töötab.

Märge : Makro korrektse töötamise tagamiseks peate võib -olla kohandama oma usalduskeskuse seadeid.

Selleks avage arvutustabel ja navigeerige lehele Fail > Valikud > Usalduskeskus .

Siit klõpsake Usalduskeskuse seaded ja seadke järgmisel ekraanil raadio valimisnupp asendisse Ärge kunagi näidake teavet blokeeritud sisu kohta .

Pange Microsoft Excel enda heaks tööle

Microsoft Excel on uskumatult võimas tööriist, kuid õppimine, kuidas sellest maksimumi võtta, võib olla pisut hirmutav. Kui soovite tarkvara tõeliselt valdada, peate seda tegema mugav VBA -ga ja see pole väike ülesanne.

wi-fi-l pole kehtivat ip-konfiguratsiooni Windows 10

Tulemused räägivad aga enda eest. Kui teil on väike VBA -kogemus, saate peagi panna Microsoft Exceli põhiülesandeid automaatselt täitma, andes teile rohkem aega keskenduda pakilisematele asjadele.

VBA -ga asjatundlikkuse loomine võtab aega, kuid varsti näete oma töö vilju, kui saate sellest kinni pidada.

Üks suurepärane koht alustamiseks on meie autoriteet õpetus VBA kasutamise kohta Excelis . Kui olete sellega lõpetanud, tundub see lihtne skript Excelist e -kirjade saatmiseks nagu lapsemäng.

Jaga Jaga Piiksuma E -post Canon vs Nikon: milline kaamera on parem?

Canon ja Nikon on kaameratööstuse kaks suurimat nime. Kuid milline kaubamärk pakub paremat kaamerate ja objektiivide valikut?

Loe edasi
Seotud teemad
  • Tootlikkus
  • Programmeerimine
  • Nõuanded e -posti teel
  • Programmeerimine
  • Visuaalne põhiprogrammeerimine
  • Microsoft Excel
  • Microsoft Office'i näpunäited
Autori kohta Ryan Dube(Avaldatud 942 artiklit)

Ryanil on elektrotehnika bakalaureusekraad. Ta on töötanud 13 aastat automaatikainsenerina, 5 aastat IT -alal ja on nüüd rakenduste insener. MakeUseOfi endine tegevtoimetaja on rääkinud üleriigilistel andmete visualiseerimise konverentsidel ning esinenud üleriigilises televisioonis ja raadios.

Rohkem Ryan Dube'ilt

Telli meie uudiskiri

Liituge meie uudiskirjaga, et saada tehnilisi näpunäiteid, ülevaateid, tasuta e -raamatuid ja eksklusiivseid pakkumisi!

Tellimiseks klõpsake siin