• Crea una nuova cartella di lavoro con la selezione.

  • Salva la cartella di lavoro prima di spedirla.

  • Elimina il file dal tuo disco rigido dopo che è stato inviato.

Mostrerà le righe e le colonne nascoste nella selezione Tutte le celle vuote al di fuori della selezione sono nascoste (vedi screenshot)

In questo modo la selezione è sempre in cima al tuo foglio

Sub Mail_Selection()

Dim strDate As String

Dim Addr As String

Dim rng As Range

If ActiveWindow.SelectedSheets.Count > 1 Or Selection.Areas.Count > 1 Then Exit Sub

Application.ScreenUpdating = False

Addr = Selection.Address

ActiveSheet.Copy

ActiveSheet.Pictures.Delete

With Cells

.EntireColumn.Hidden = False

.EntireRow.Hidden = False

End With

Range(Addr).Select

Set rng = Selection

Application.GoTo rng, True

With rng.EntireColumn

.Hidden = True

rng(1).EntireRow.SpecialCells(xlVisible).EntireColumn.Clear

rng(1).EntireRow.SpecialCells(xlVisible).EntireColumn.Hidden = True

.Hidden = False

End With

With rng.EntireRow

.Hidden = True

rng(1).EntireColumn.SpecialCells(xlVisible).EntireRow.Clear

rng(1).EntireColumn.SpecialCells(xlVisible).EntireRow.Hidden = True

.Hidden = False

End With

Application.GoTo rng, True

rng.Cells(1).Select

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

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

& " " & strDate & ".xls"

ActiveWorkbook.SendMail "[email protected]", _

"This is the Subject line"

ActiveWorkbook.ChangeFileAccess xlReadOnly

Kill ActiveWorkbook.FullName

ActiveWorkbook.Close False

Application.ScreenUpdating = True

End Sub