Send et ark med VBA i Microsoft Excel

Anonim

I denne artikkelen vil vi lage en makro for å sende et ark som vedlegg i en e -post.

Før vi kjører makroen, må vi spesifisere en e -post -ID og emnet for e -posten.

I dette eksemplet ønsker vi å sende "DataSheet" som et vedlegg i e -posten.

Logisk forklaring

Vi har opprettet "MailSheet" -makro, som tar e -post -ID og emnet for e -posten fra tekstbokser. Den oppretter en ny kopi av "DataSheet", lagrer den og sender den som et vedlegg.

Kode forklaring

Ark ("Dataark"). Kopier

Koden ovenfor brukes til å lage en kopi av "DataSheet" i en ny arbeidsbok.

ActiveWorkbook.SaveAs "Part of" & ThisWorkbook.Name _

& "" & StrDate & ".xls"

Koden ovenfor brukes til å lagre den nye arbeidsboken.

ActiveWorkbook.SendMail EmailID, MailSubject

Koden ovenfor brukes til å sende den aktive arbeidsboken som et vedlegg til den angitte e -post -IDen, med det gitte emnet.

ActiveWorkbook.Close False

Koden ovenfor brukes til å lukke den aktive arbeidsboken uten å lagre den.

Følg koden nedenfor

 Sub MailSheet () 'Declaring variables Dim StrDate, EmailID, MailSubject As String' Henter verdi for e -post -ID og emne fra tekstbokser EmailID = Sheet1.TextBox1.Value MailSubject = Sheet1.TextBox2.Value 'Kopierer "Dataark" til nye arbeidsbokark (" DataSheet "). Kopier 'Formatering av dato og klokkeslett til bestemt format StrDate = Format (Date," dd-mm-yy ") &" "& Format (Time," h-mm ")' Lagrer aktiv arbeidsbok med nytt navn ActiveWorkbook. SaveAs "Part of" & ThisWorkbook.Name _ & "" & StrDate & ".xls" 'Sending mail ActiveWorkbook.SendMail EmailID, MailSubject' Lukk den aktive arbeidsboken ActiveWorkbook.Close False End Sub 

Hvis du likte denne bloggen, del den med vennene dine på Facebook. Du kan også følge oss på Twitter og Facebook.

Vi vil gjerne høre fra deg, gi oss beskjed om hvordan vi kan forbedre arbeidet vårt og gjøre det bedre for deg. Skriv til oss på e -post