Lähetä arkki sähköpostitse VBA: n avulla Microsoft Excelissä

Anonim

Tässä artikkelissa luomme makron, joka lähettää arkin sähköpostin liitteenä.

Ennen makron suorittamista meidän on määritettävä sähköpostitunnus ja sähköpostin aihe.

Tässä esimerkissä haluamme lähettää "DataSheet" sähköpostin liitteenä.

Looginen selitys

Olemme luoneet "MailSheet" -makron, joka ottaa sähköpostitunnuksen ja sähköpostin aiheen tekstikentistä. Se luo uuden kopion "DataSheetistä", tallentaa sen ja lähettää sen liitteenä.

Koodin selitys

Sheets ("DataSheet")

Yllä olevaa koodia käytetään luomaan kopio ”DataSheet” -kirjasta uuteen työkirjaan.

ActiveWorkbook.SaveAs "Osana" & ThisWorkbook.Name _

& "" & StrDate & .xls "

Yllä olevaa koodia käytetään uuden työkirjan tallentamiseen.

ActiveWorkbook.SendMail EmailID, MailSubject

Yllä olevaa koodia käytetään aktiivisen työkirjan lähettämiseen liitetiedostona määritettyyn sähköpostitunnukseen, jossa on annettu aihe.

ActiveWorkbook.Close False

Yllä olevaa koodia käytetään sulkemaan aktiivinen työkirja tallentamatta sitä.

Seuraa koodia alla

 Sub MailSheet () 'Declaring muuttujat Dim StrDate, EmailID, MailSubject as String' Arvon saaminen sähköpostitunnukselle ja aiheelle tekstiruuduista EmailID = Sheet1.TextBox1.Value MailSubject = Sheet1.TextBox2.Value 'Kopioi "DataSheet" uusille työkirjan taulukoille (" DataSheet "). Kopioi 'Päivämäärän ja ajan muotoilu tiettyyn muotoon StrDate = Format (Date," dd-mm-yy ") &" "& Format (Time," h-mm ")' Aktiivisen työkirjan tallentaminen uudella nimellä ActiveWorkbook. SaveAs "Osa" & ThisWorkbook.Name _ & "" & StrDate & ".xls" 'Sähköpostin lähettäminen ActiveWorkbook.SendMail EmailID, MailSubject' Sulje aktiivinen työkirja ActiveWorkbook.Close False End Sub 

Jos pidit tästä blogista, jaa se ystävillesi Facebookissa. Voit myös seurata meitä Twitterissä ja Facebookissa.

Haluaisimme kuulla sinusta, kerro meille, kuinka voimme parantaa työtämme ja parantaa sitä sinulle. Kirjoita meille sähköpostitse