Siųskite laiškus paštu naudodami „Microsoft Excel“ VBA

Anonim

Šiame straipsnyje mes sukursime makrokomandą, kad išsiųstume lapą kaip priedą el.

Prieš paleisdami makrokomandą, turime nurodyti el. Pašto adresą ir el. Laiško temą.

Šiame pavyzdyje norime išsiųsti „DataSheet“ kaip el. Laiško priedą.

Loginis paaiškinimas

Mes sukūrėme „MailSheet“ makrokomandą, kuri paima el. Pašto adresą ir el. Laiško temą iš teksto laukelių. Jis sukuria naują „DataSheet“ kopiją, išsaugo ją ir siunčia kaip priedą.

Kodo paaiškinimas

Skaičiuoklės („Duomenų lapas“). Kopijuoti

Aukščiau pateiktas kodas naudojamas „DataSheet“ kopijai sukurti naujoje darbaknygėje.

„ActiveWorkbook.SaveAs“ ir „ThisWorkbook.Name“ dalis

& "" & StrDate & ".xls"

Aukščiau pateiktas kodas naudojamas naujai darbo knygai išsaugoti.

ActiveWorkbook.SendMail EmailID, MailSubject

Aukščiau pateiktas kodas naudojamas aktyviai darbo knygai siųsti kaip priedą prie nurodyto el. Pašto adreso su nurodyta tema.

„ActiveWorkbook“. Uždaryti klaidingą

Aukščiau pateiktas kodas naudojamas uždaryti aktyvią darbaknygę jos neišsaugojus.

Sekite toliau pateiktą kodą

 Sub MailSheet () 'Declaring kintamieji Dim StrDate, EmailID, MailSubject As String' Gauti el. Pašto ID ir temos reikšmę iš teksto laukelių EmailID = Sheet1.TextBox1.Value MailSubject = Sheet1.TextBox2.Value 'Kopijuoti "DataSheet" į naujus darbaknygės lapus (" „DataSheet"). Nukopijuokite „Formatavimo data ir laikas į tam tikrą formatą StrDate = Format (Date," dd-mm-yy ") &" "& Format (Time," h-mm ") 'Išsaugoma aktyvi darbaknygė nauju pavadinimu ActiveWorkbook. SaveAs "Dalis" & ThisWorkbook.Name _ & "" & StrDate & ".xls" 'Laiškų siuntimas ActiveWorkbook.SendMail EmailID, MailSubject' Uždaryti aktyvią darbaknygę ActiveWorkbook.Close False End Sub 

Jei jums patiko šis tinklaraštis, pasidalykite juo su draugais „Facebook“. Be to, mus galite sekti „Twitter“ ir „Facebook“.

Mes norėtume išgirsti jūsų nuomonę, praneškite mums, kaip galime pagerinti savo darbą ir padaryti jį geresnį. Rašykite mums el