Questa macro invierà ogni foglio a una persona.

  • Crea una nuova cartella di lavoro con il foglio.

Salvare la cartella di lavoro prima di inviarla per posta Elimina il file dal disco rigido dopo l’invio.

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-yy") & " " & Format(Time, "h-mm-ss")

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

& " " & strDate & ".xls"

ActiveWorkbook.SendMail ActiveSheet.Range("a1").Value, _

"This is the Subject line"

ActiveWorkbook.ChangeFileAccess xlReadOnly

Kill ActiveWorkbook.FullName

ActiveWorkbook.Close False

End If

Next sh

Application.ScreenUpdating = True

End Sub