Si vous sélectionnez la commande ENVOYER AU RÉCEPTEUR E-MAIL dans le menu FICHIER, le classeur entier est automatiquement joint en tant que pièce jointe et envoyé. Pour envoyer uniquement la feuille de calcul active, utilisez la macro suivante:
Sub feuillecalculEnvoyer () Dim s As String s = InputBox _ ("Entrez le destinataire de l'e-mail!") If s = "" Then Exit Sub ActiveSheet.Copy ActiveWorkbook.SaveAs "Attachment.xls" Application.Dialogs (xlDialogSendMail).Show s End Sub
Vous pouvez utiliser une zone de saisie pour interroger l’adresse de messagerie à laquelle la table doit être envoyée. Copiez ensuite la feuille de calcul active et enregistrez-la, par exemple, sous le nom Attachement.XLS. Appelez ensuite la boîte de dialogue Excel intégrée chargée de l’envoi des e-mails et transférez l’adresse du destinataire dans cette boîte de dialogue.
Sub TrierLesFeuillesDeCalcul() Dim iMax As Integer Dim Ibl As Integer Dim ibl2 As Integer Application.ScreenUpdating = Faux iMax = ActiveWorkbook.Worksheets.Count For Ibl = 1 vers iMax For ibl2 = Ibl vers iMax Si UCase (Worksheets (ibl2) .Name) _ <UCase (Worksheets (Ibl) .Name) Puis Feuilles de travail (ibl2) .Move before: = Feuilles de travail (Ibl) End if Next ibl2 Next Ibl Application.ScreenUpdating = Vrai End Sub