Envoyer un tableau par mail

Je voudrais envoyer une zone de cellules par e-mail et uniquement les valeurs et non pas les formules de ces dernières.

Cette procédure envoie une plage de données :

  • sans formule
  • Sans format
  • La plage d'origine se retrouve à partir de la cellule A1 dans la feuille du fichier envoyé.
  • Renomme la feuille et la plage de cellule selon ton application.
  • Enlève les objets de la feuille envoyée,
  • Enlève le code de la feuille envoyée s'il existe
 sub EnvoiPlageDonnéeParCourriel()
 
 Dim Plage As Range, T As Variant, A As Long
 Dim Shap As Object, B As Integer
 
 Application.ScreenUpdating = False
 With Worksheets("Feuil1")
  Set Plage = Worksheets("feuil1").Range("A1:A10")
  T = Plage
  .Copy
 End With
 
 A = Plage.Rows.Count
 B = Plage.Columns.Count
 
 With ActiveWorkbook
  With .VBProject.VBComponents(ActiveSheet.Name).CodeModule
    .deletelines 1, .countoflines
  End With
  With .ActiveSheet
    .Cells.Clear
    .Range(Cells(1, 1), Cells(A, B)) = T
    For Each Shap In .Shapes
      Shap.Select Replace:=False
    Next
    Selection.Delete
  End With
  SendKeys "(%{E})", False
  .SendMail Recipients:="Destinataire@Serveur", subject:="Test"
  .Close savechanges:=False
 End With
 Set Plage = Nothing: Set Shap = Nothing
 
 end sub

Auteur :

Mots clefs associés à cette page : , ,