Lehe saatmine Microsoft Excelis VBA abil

Anonim

Selles artiklis loome makro, et saata leht meilis manusena.

Enne makro käivitamist peame määrama e -posti ID ja e -kirja teema.

Selles näites tahame saata e -kirja manusena „DataSheet”.

Loogiline seletus

Oleme loonud makro „MailSheet“, mis võtab tekstiväljadelt e -posti ID ja e -kirja teema. See loob uue andmelehe koopia, salvestab selle ja saadab selle manusena.

Koodi selgitus

Arvutustabelid ("Andmeleht"). Kopeeri

Ülaltoodud koodi kasutatakse andmelehe koopia loomiseks uude töövihikusse.

ActiveWorkbook.SaveAs "& ThisWorkbook.Name" osana

& "" & StrDate & ".xls"

Ülaltoodud koodi kasutatakse uue töövihiku salvestamiseks.

ActiveWorkbook.SendMail EmailID, MailSubject

Ülaltoodud koodi kasutatakse aktiivse töövihiku saatmiseks manusena määratud e -posti aadressile koos antud teemaga.

ActiveWorkbook. Sulge vale

Ülaltoodud koodi kasutatakse aktiivse töövihiku sulgemiseks seda salvestamata.

Palun järgige koodi allpool

 Sub -MailSheet () 'Muutujate deklareerimine Dim StrDate, EmailID, MailSubject as String' E -posti ID ja teema väärtuse hankimine tekstkastidest EmailID = Sheet1.TextBox1.Value MailSubject = Sheet1.TextBox2.Value 'Andmelehe kopeerimine uutele töövihikute lehtedele (" DataSheet "). Kopeerige" Kuupäeva ja kellaaja vormindamine kindlasse vormingusse StrDate = Format (Date, "dd-mm-yy") & "" & Format (Time, "h-mm") 'Aktiivse töövihiku salvestamine uue nimega ActiveWorkbook. SaveAs "Osa" & ThisWorkbook.Name _ & "" & StrDate & ".xls" 'Kirjade saatmine ActiveWorkbook.SendMail EmailID, MailSubject' Sulgege aktiivne töövihik ActiveWorkbook.Close False End Sub 

Kui teile see blogi meeldis, jagage seda oma sõpradega Facebookis. Lisaks saate meid jälgida Twitteris ja Facebookis.

Tahaksime sinust kuulda, andke meile teada, kuidas saaksime oma tööd paremaks muuta ja teie jaoks paremaks muuta. Kirjuta meile meilisaidile