Trimiteți selecția prin poștă utilizând VBA în Microsoft Excel

Anonim
  • Creați un nou registru de lucru cu Selecția.
  • Salvați registrul de lucru înainte de al trimite prin poștă.
  • Ștergeți fișierul de pe hard disk după ce acesta este trimis.

Va afișa rândurile și coloanele ascunse în selecție
Toate celulele goale din afara selecției sunt ascunse (vezi captura de ecran)
În acest fel, selecția este întotdeauna în partea de sus a foii

Sub Mail_Selection () Dim strDate As String Dim Addr As String Dim rng As Range If ActiveWindow.SelectedSheets.Count> 1 Sau Selection.Areas.Count> 1 Exit Sub Application.ScreenUpdating = False Addr = Selection.Address ActiveSheet.Copy ActiveSheet. Pictures.Elete With Cell .EntireColumn.Hidden = False .EntireRow.Hidden = False End With Range (Addr). Selectați 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 (xl .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.SendM ail "[email protected]", _ "Aceasta este linia subiectului" ActiveWorkbook.ChangeFileAccess xlReadOnly Kill ActiveWorkbook.FullName ActiveWorkbook.Close False Application.ScreenUpdating = True End Sub