Envíe por correo cada hoja de trabajo con la dirección en la celda A1 usando VBA en Microsoft Excel

Anonim

Esta macro enviará cada hoja a una persona.

  • Cree un nuevo libro de trabajo con la Hoja.
  • Guarde el libro antes de enviarlo por correo
  • Elimine el archivo de su disco duro después de enviarlo.
Sub Mail_every_Worksheet () Dim strDate As String Dim sh As Worksheet Application.ScreenUpdating = False For Each sh In ThisWorkbook.Worksheets If sh.Range ("a1"). Value Like "* @ *" Then sh.Copy strDate = Format (Date , "dd-mm-aa") & "" & Formato (Hora, "h-mm-ss") ActiveWorkbook.SaveAs "Parte de" & ThisWorkbook.Name _ & "" & strDate & ".xls" ActiveWorkbook.SendMail ActiveSheet.Range ("a1"). Value, _ "Esta es la línea de asunto" ActiveWorkbook.ChangeFileAccess xlReadOnly Kill ActiveWorkbook.FullName ActiveWorkbook.Close False End If Next sh Application.ScreenUpdating = True End Sub