KutoolsforOffice — Une solution unique, cinq outils puissants.Faire plus avec moins d'efforts.Soldes de mars : 20 % de réduction

Comment envoyer chaque feuille à des adresses e-mail différentes depuis Excel ?

AuteurXiaoyang Date de modification

Si votre classeur Excel contient plusieurs feuilles de calcul, chacune comportant une adresse e-mail dans la cellule S1, vous voudrez sans doute envoyer chaque feuille en pièce jointe à son destinataire respectif. Cette opération peut vite devenir fastidieuse si elle est réalisée manuellement, particulièrement lorsque le nombre de feuilles est élevé. Dans ce tutoriel, nous vous montrons comment automatiser cette tâche à l’aide d’un code VBA afin d’envoyer chaque feuille du classeur en pièce jointe à l’adresse e-mail figurant dans la cellule S1 de cette même feuille.


Envoyer chaque feuille à des Adresse e-mail différents depuis Excel à l’aide d’un code VBA

Le code VBA ci-dessous vous permet d’envoyer chaque feuille de calcul en pièce jointe à son destinataire respectif, indiqué dans la cellule S1. Voici la procédure à suivre :

1. Appuyez simultanément sur les touches Alt + F11 pour ouvrir la fenêtre Microsoft Visual Basic pour Applications.

2. Cliquez ensuite sur Insertion > Module, puis copiez-collez le code VBA ci-dessous dans la fenêtre.

Code VBA : envoyer chaque feuille en pièce jointe à des Adresse e-mail différents

Sub Mail_Every_Worksheet()
'Updateby ExtendOffice
  Dim xWs As Worksheet
  Dim xWb As Workbook
  Dim xFileExt As String
  Dim xFileFormatNum As Long
  Dim xTempFilePath As String
  Dim xFileName As String
  Dim xOlApp As Object
  Dim xMailObj As Object
  On Error Resume Next
  With Application
      .ScreenUpdating = False
      .EnableEvents = False
  End With
  xTempFilePath = Environ$("temp") & "\"
  If Val(Application.Version) < 12 Then
    xFileExt = ".xls": xFileFormatNum = -4143
  Else
    xFileExt = ".xlsm": xFileFormatNum = 52
  End If
  Set xOlApp = CreateObject("Outlook.Application")
  For Each xWs In ThisWorkbook.Worksheets
    If xWs.Range("S1").Value Like "?*@?*.?*" Then
      xWs.Copy
      Set xWb = ActiveWorkbook
      xFileName = xWs.Name & " of " _
                   & VBA.Left(ThisWorkbook.Name, VBA.InStr(ThisWorkbook.Name, ".") - 1) & " "
      Set xMailObj = xOlApp.CreateItem(0)
      xWb.Sheets.Item(1).Range("S1").Value = ""
      With xWb
        .SaveAs xTempFilePath & xFileName & xFileExt, FileFormat:=xFileFormatNum
        With xMailObj
        'specify the CC, BCC, Subject, Body below
            .To = xWs.Range("S1").Value
            .CC = ""
            .BCC = ""
            .Subject = "This is the Subject line"
            .Body = "Hi there"
            .Attachments.Add xWb.FullName
            .Display
        End With
        .Close SaveChanges:=False
      End With
      Set xMailObj = Nothing
      Kill xTempFilePath & xFileName & xFileExt
    End If
  Next
  Set xOlApp = Nothing
  With Application
      .ScreenUpdating = True
      .EnableEvents = True
  End With
End Sub
Remarque: Dans le code ci-dessus :
  • S1 est la cellule qui contient l’adresse e-mail à laquelle vous souhaitez envoyer le message. Si vos adresses e-mail se trouvent dans une autre cellule, telle que A1, vous pouvez modifier le code pour refléter ce changement.
  • Vous pouvez spécifier les champs CC, CCI, Objet et Corps selon vos besoins directement dans le code ;
  • Pour envoyer l’e-mail directement sans ouvrir la fenêtre de nouveau message suivante, remplacez .Display par .Send.

Capture d’écran de la fenêtre du code VBA permettant d’envoyer chaque feuille Excel à une adresse e-mail différente située dans la cellule S1

3. Appuyez ensuite sur la touche F5 pour exécuter ce code. Chaque feuille est alors automatiquement insérée en pièce jointe dans une nouvelle fenêtre de message, comme illustré ci-dessous :

Capture d’écran de nouveaux messages électroniques dans Outlook, chacun comportant une feuille Excel jointe et envoyé à des destinataires différents

4. Enfin, cliquez sur le bouton Envoyer pour expédier chaque e-mail un par un.


Kutools pour Excel : Envoyez des e-mails personnalisés en un seul clic, facilement !

Fonctionnalité d’envoi d’e-mails personnalisés

Vous en avez assez d’envoyer des e-mails clients un par un ? Grâce à la fonctionnalité « Envoyer des e-mails » de Kutools pour Excel, votre communication gagne en rapidité et en professionnalisme ! Il vous suffit de préparer une feuille Excel contenant les noms, les adresses e-mail, les codes d’inscription et d’insérer un espace réservé : le système génère automatiquement des e-mails personnalisés et en envoie des centaines en un seul clic. Fini le travail répétitif !

  • 💡 Les espaces réservés dynamiques (par exemple, nom, code d’inscription) intègrent automatiquement un contenu personnalisé pour chaque destinataire, donnant l’impression que chaque e-mail a été spécialement conçu pour lui.
  • 📎 Joignez des fichiers personnalisés pour une livraison précise
  • 📤 S’intègre parfaitement à Outlook pour un envoi sécurisé et fiable
  • 📝 Enregistrez et réutilisez des modèles d’e-mails pour une efficacité maximale
  • 🎨 Éditeur WYSIWYG (« ce que vous voyez est ce que vous obtenez ») facile à utiliser
  • 🖋 Utilisez votre signature Outlook — aucune configuration supplémentaire requise, il suffit d’envoyer !
  • Obtenez Kutools pour Excel dès maintenant !

Meilleurs outils de productivité Office

🤖Kutools IA Aide: Révolutionnez Analyse des données grâce à :Exécution intelligente   |  Générez du code|  Créez formules personnalisées  |  Analysez des données et générez des graphiques|  Appelez Fonctions améliorées
Fonctionnalités populaires:Rechercher, mettre en surbrillance ou Marquer les doublons   |  Supprimer les lignes vides   |  Combinez les colonnes ou cellules sans perdre de données   |   Arrondi sans utiliser de formule...
Super RECHERCHEV:RechercheValeurs avec critères multiples  |  RechercheValeurs avec valeurs multiples  |   RechercheValeurs dans plusieurs feuilles   |   Correspondance floue....
Liste déroulante avancée:Créez rapidement une liste déroulante   |  Liste déroulante dépendante   |  Liste déroulante à sélection multiple....
Gestionnaire de colonnes:Ajouter un nombre précis de colonnes|Déplacer des colonnes|Basculer la visibilité des colonnes masquées|Comparer des plages et des colonnes...
Fonctionnalités vedettes:Mise au point de la grille   |  Vue de conception   |Barre de formule améliorée   | Gestionnaire de classeurs et de feuilles   |  Bibliothèque de ressources(Texte automatique)|  Sélecteur de date   |  Consolider les feuilles de calcul  |  Chiffrer/Déchiffrer les cellules   | Envoyer des e-mails par liste   |  Super Filtre   |   Filtre spécial(Filtrer les cellules avec une police en gras/italique/barré...) ...
… et bien plus encore… et plus encore:(,)Supprimer des caractères spécifiques, ...)|   50+Typesde graphiques(, ...)|   40+ Formules pratiques(Calculer l'âge en fonction de la date de naissance, ...)|   19 Outils d’insertion(,Insérer une image depuis un chemin , ...)|   de conversion (Convertir en mots,Conversion de devises, ...)|Fusionner et scinder   (Fusion avancée des lignes,Diviser les cellules , ...)|, ...)   |
Utilisez Kutools dans la langue de votre choix – disponible en anglais, espagnol, allemand, français, chinois et 40+ autres langues !

Boostez vos compétences Excel avec Kutools pour Excel et découvrez une efficacité inégalée.Kutools pour Excel propose plus de 300 fonctionnalités avancées pour améliorer votre productivité et Gagner du temps.Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...


Office Tab apporte une interface à onglets à Office et rend votre travail bien plus facile

  • Activez l’édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50 % et vous fait économiser des centaines de clics de souris chaque jour !

Tous les compléments Kutools. Un seul installateur

Kutools for Office regroupe les compléments pour Excel, Word, Outlook et PowerPoint, ainsi que Office Tab Pro, ce qui en fait le choix idéal pour les équipes travaillant à travers les applications Office.

ExcelWordOutlookTabsPowerPoint
  • Suite tout-en-un— Compléments Excel, Word, Outlook et PowerPoint + Office Tab Pro
  • Un seul installateur, une seule licence— installation en quelques minutes (compatible MSI)
  • Fonctionne mieux ensemble— productivité optimisée dans toutes les applications Office
  • Essai gratuit de 30 jours avec toutes les fonctionnalités— aucune inscription, aucune carte bancaire
  • Meilleur rapport qualité-prix— économisez par rapport à l’achat de compléments individuels