Note: The other languages of the website are Google-translated. Back to English
Se connecter  \/ 
x
or
x
INSCRIPTION  \/ 
x

or

Comment envoyer un e-mail avec plusieurs pièces jointes dans Excel?

Cet article parle de l'envoi d'un e-mail via Outlook avec plusieurs pièces jointes jointes dans Excel.

Envoyer un e-mail avec plusieurs pièces jointes jointes dans Excel avec le code VBA


Envoyer un e-mail avec plusieurs pièces jointes jointes dans Excel avec le code VBA


Veuillez procéder comme suit pour envoyer un e-mail avec plusieurs pièces jointes jointes dans Excel.

1. Veuillez insérer un bouton de commande en cliquant Promoteurs > insérer > Bouton de commande (contrôle ActiveX). Voir la capture d'écran:

2. Après avoir inséré le bouton de commande, cliquez dessus avec le bouton droit de la souris et sélectionnez Voir le code dans le menu contextuel.

3. Dans l'ouverture Microsoft Visual Basic pour applications fenêtre, veuillez cliquer Outils > Références comme ci-dessous la capture d'écran montrée.

4. dans le Références - VBAProject boîte de dialogue, veuillez trouver et vérifier la Bibliothèque d'objets Microsoft Outlook , puis cliquez sur le OK .

5. Remplacez ensuite le code d'origine dans la fenêtre Code par le code VBA ci-dessous.

Code VBA: envoyer un e-mail en pièce jointe avec plusieurs pièces jointes dans Excel

Private Sub CommandButton1_Click()
    Dim xStrFile As String
    Dim xFilePath As String
    Dim xFileDlg As FileDialog
    Dim xFileDlgItem As Variant
    Dim xOutApp As Outlook.Application
    Dim xMailOut As Outlook.MailItem
    Application.ScreenUpdating = False
    Set xOutApp = CreateObject("Outlook.Application")
    Set xMailOut = xOutApp.CreateItem(olMailItem)
    Set xFileDlg = Application.FileDialog(msoFileDialogFilePicker)
    If xFileDlg.Show = -1 Then
        With xMailOut
            .BodyFormat = olFormatRichText
            .To = "happy.xuebi@163.com"
            .Subject = "test"
            .HTMLBody = "test"
            For Each xFileDlgItem In xFileDlg.SelectedItems
                .Attachments.Add xFileDlgItem
            Next xFileDlgItem
            .Display
        End With
    End If
    Set xMailOut = Nothing
    Set xOutApp = Nothing
    Application.ScreenUpdating = True
End Sub

Notes: veuillez spécifier le destinataire, l'objet et le corps de votre e-mail en modifiant la variable .À = heureux.xuebi@163.com, .Subject = "test" à ces émotions et de .HTMLBody = "test" lignes dans le code.

6. appuie sur le autre + Q touches ensemble pour quitter Microsoft Visual Basic pour applications fenêtre.

7. Cliquez Promoteurs > Mode de conception pour désactiver le mode de conception. Voir la capture d'écran:

8. Cliquez sur le bouton de commande pour exécuter le code. Dans le popping DECOUVREZ fenêtre, sélectionnez les fichiers à joindre à l'e-mail, puis cliquez sur le OK bouton. Voir la capture d'écran:

9. Ensuite, un e-mail est créé avec les champs spécifiés et les pièces jointes répertoriées. Veuillez cliquer sur le Envoyez bouton pour l'envoyer. Voir la capture d'écran:

Notes: Le code VBA ne fonctionne que lorsque vous utilisez Outlook comme programme de messagerie.


Envoyez facilement des e-mails via Outlook en fonction des champs de la liste de diffusion créée dans Excel:

L'équipe de Envoyer des emails utilité de Kutools pour Excel aide les utilisateurs à envoyer des e-mails via Outlook en fonction de la liste de diffusion créée dans Excel.
Téléchargez et essayez-le maintenant! (Parcours gratuit de 30 jours)



Articles Liés:


Les meilleurs outils de productivité de bureau

Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe; Créer une liste de diffusion et envoyer des e-mails ...
  • Barre Super Formula (modifiez facilement plusieurs lignes de texte et de formule); Disposition de lecture (lire et modifier facilement un grand nombre de cellules); Coller dans la plage filtrée...
  • Fusionner les cellules / lignes / colonnes sans perdre de données; Contenu des cellules divisées; Combiner des lignes / colonnes en double... Empêcher les cellules en double; Comparer les gammes...
  • Sélectionnez Dupliquer ou Unique Lignes; Sélectionnez les lignes vides (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux classeurs; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de formule; Créer automatiquement des références à plusieurs feuilles; Insérer des puces, Cases à cocher et plus encore ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre le contenu et les commentaires des cellules...
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial par gras, italique ...
  • Combiner des classeurs et des feuilles de travail; Fusionner les tableaux en fonction des colonnes clés; Diviser les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDF...
  • Plus de 300 fonctionnalités puissantes. Prend en charge Office / Excel 2007-2019 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Essai gratuit de 30 jours. Garantie de remboursement de 60 jours.
onglet kte 201905

Office Tab apporte une interface à onglets à Office et simplifie considérablement votre travail

  • Activer 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 réduit des centaines de clics de souris chaque jour!
bas de cabine
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Alberto · 7 months ago
    Hola,

    Me gustaría saber como quedaría la macro si quisiera enviar en un mismo correo a varias personas o más y con varios ficheros o más.

    Muchas gracias.
  • To post as a guest, your comment is unpublished.
    Bigfoot17 · 1 years ago
    I have enjoyed working through this solution for adding multiple attachments to an email from within Excel VBA. Thank you. I know that a lot of us benefit and then want some aspect customized for exactly what we are trying to do. I am no different, but for step 8. Can we set the path that the Browse window will open with? I can browse over to another folder at a different location but if I could set the path that would be a time saver.
  • To post as a guest, your comment is unpublished.
    udayakumar · 1 years ago
    Superb...... Works perfectly.

  • To post as a guest, your comment is unpublished.
    kailash.naik00@gmail.com · 2 years ago
    HI Team ....i am unable to see the attachment in mail so if i follow the your step...can you pls help
  • To post as a guest, your comment is unpublished.
    Regina · 2 years ago
    the above code works perfectly thanks!! but my email automatic signature seem to disappear with this code. any idea why?
  • To post as a guest, your comment is unpublished.
    Rizwan Siddiqui · 3 years ago
    What if multiple different user and different attachment to be send with different subject line.
  • To post as a guest, your comment is unpublished.
    prashantsoni51@gmail.com · 3 years ago
    What if above files are located in sub-folders? How to look for a file in folder and sub-folders?
  • To post as a guest, your comment is unpublished.
    Laurel Granger · 3 years ago
    I am able to "Quickly send email with multiple attachments attached in Excel with Kutools for Excel" using your steps above, but would like to take it one step further and personalize each email by inserting their names (from a column in the Excel sheet) into the body of the email. While in the body of the email, I try selecting the field and clicking on "Insert Placeholder" but nothing happens. Any idea why or how I can fix this? Thank you!