En este artículo, crearemos una macro para enviar una hoja como archivo adjunto en un correo electrónico.

Antes de ejecutar la macro, debemos especificar una identificación de correo electrónico y el asunto del correo electrónico.

ArrowMain

En este ejemplo, queremos enviar «Hoja de datos» como un archivo adjunto en el correo electrónico.

ArrowSentMail

Explicación lógica

Hemos creado la macro «MailSheet», que toma la identificación del correo electrónico y el asunto del correo electrónico de los cuadros de texto. Crea una nueva copia de «Hoja de datos», la guarda y la envía como un archivo adjunto.

Explicación del código

Hojas («Hoja de datos»). Copiar El código anterior se utiliza para crear una copia de «Hoja de datos» en un nuevo libro de trabajo.

ActiveWorkbook.SaveAs «Parte de» & ThisWorkbook.Name _ & «» & StrDate & «.xls»

El código anterior se usa para guardar el nuevo libro de trabajo.

ActiveWorkbook.SendMail EmailID, MailSubject El código anterior se utiliza para enviar el libro de trabajo activo como un archivo adjunto al ID de correo electrónico especificado, con el asunto dado.

ActiveWorkbook.Close False El código anterior se utiliza para cerrar el libro activo sin guardarlo.

Siga a continuación el código

Sub MailSheet()

'Declaring variables

Dim StrDate, EmailID, MailSubject As String

'Getting value for Email ID and subject from textboxes

EmailID = Sheet1.TextBox1.Value

MailSubject = Sheet1.TextBox2.Value

'Copying "DataSheet" to new workbook

Sheets("DataSheet").Copy

'Formatting date and time to particular format

StrDate = Format(Date, "dd-mm-yy") & " " & Format(Time, "h-mm")

'Saving active workbook with new name

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

& " " & StrDate & ".xls"

'Sending mail

ActiveWorkbook.SendMail EmailID, MailSubject

'Close the active workbook

ActiveWorkbook.Close False

End Sub

Si te gustó este blog, compártelo con tus amigos en Facebook y Facebook.

Nos encantaría saber de usted, háganos saber cómo podemos mejorar nuestro trabajo y hacerlo mejor para usted. Escríbanos a [email protected]