Astuce: Les autres langues sont Google-Traduction. Vous pouvez visiter le English version de ce lien.
Se connecter
x
or
x
x
S'enregistrer
x

or

Comment envoyer un courrier électronique en copiant et en collant une plage spécifiée dans le corps d'un e-mail dans Excel?

Dans la plupart des cas, une plage de contenu spécifiée dans la feuille de calcul Excel peut être utile dans votre communication par courrier électronique. Dans cet article, nous allons présenter une méthode d'envoi d'un e-mail avec collage de plages spécifié dans le corps de l'e-mail directement dans Excel.

Envoyer un e-mail avec une plage spécifiée collée dans le corps de l'e-mail dans Excel


Envoyer un e-mail avec une plage spécifiée collée dans le corps de l'e-mail dans Excel


Le code VBA suivant peut vous aider à copier une plage et à la coller dans un corps de message directement dans Excel. S'il vous plaît faire comme suit.

1. Dans la feuille de calcul contient la plage que vous devez copier, appuyez sur autre + F11 touches simultanément pour ouvrir le Microsoft Visual Basic pour applications fenêtre.

2. Dans l'ouverture Microsoft Visual Basic pour applications fenêtre, s'il vous plaît cliquez Outils > Les références comme ci-dessous capture d'écran montré.

3. dans le Références - VBAProject boîte de dialogue, s'il vous plaît trouver et vérifier la Bibliothèque d'objets Microsoft Outlook option, puis cliquez sur le OK .

4. Cliquez insérer > Module, puis copiez et collez le code VBA ci-dessous dans la fenêtre Module.

Code VBA: Envoyer un e-mail avec une plage spécifiée collée dans le corps de l'e-mail dans Excel

Sub Send_Email()
    Dim xRg As Range
    Dim I, J As Long
    Dim xAddress As String
    Dim xEmailBody As String
    Dim xMailOut As Outlook.MailItem
    Dim xOutApp As Outlook.Application    
    On Error Resume Next
    xAddress = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please select range you need to paste into email body", "KuTools For Excel", xAddress, , , , , 8)
If xRg Is Nothing Then Exit Sub
Application.ScreenUpdating = False
    Set xOutApp = CreateObject("Outlook.Application")
    Set xMailOut = xOutApp.CreateItem(olMailItem)
    For I = 1 To xRg.Rows.Count
        For J = 1 To xRg.Columns.Count
            xEmailBody = xEmailBody & "  " & xRg.Cells(I, J).value
        Next
        xEmailBody = xEmailBody & vbNewLine
    Next
    xEmailBody = "Hi" & vbLf & vbLf & " body of message you want to add" & vbLf & vbLf & xEmailBody & vbNewLine
    With xMailOut
        .Subject = "Test"
        .To = "happy.xuebi@163.com"
        .Body = xEmailBody
        .Display
        '.Send
    End With
    Set xMailOut = Nothing
    Set xOutApp = Nothing
    Application.ScreenUpdating = True
End Sub

Remarques:

1). Veuillez modifier le corps de l'e-mail en ligne xEmailBody = "Bonjour" & vbLf & vbLf & "Corps du message que vous voulez ajouter" & vbLf & vbLf & xEmailBody & vbNewLine Comme vous le souhaitez.

2). Veuillez préciser votre destinataire et votre sujet .To = happy.xuebi@163.com et .Subject = "test" lignes dans le code.

5. appuie sur le F5 clé pour exécuter le code. Dans le popping up Kutools for Excel boîte de dialogue, sélectionnez la plage à coller dans le corps du message, puis cliquez sur OK bouton. Voir la capture d'écran:

6. Maintenant, un email est créé avec le destinataire spécifié, le sujet, le corps et la gamme Excel sélectionnée, s'il vous plaît cliquez sur le Envoyer bouton pour envoyer cet email. Voir la capture d'écran montrée.

Note: Le code VBA ne fonctionne que lorsque vous utilisez Outlook en tant que votre programme de messagerie.


Articles Liés:



Outils de productivité recommandés

Office Tab

étoile d'or1 Apportez des onglets pratiques à Excel et à d'autres logiciels Office, tout comme Chrome, Firefox et Internet Explorer.

Kutools for Excel

étoile d'or1 Incroyable! Augmentez votre productivité dans les minutes 5. Ne nécessite pas de compétences particulières, économisez deux heures par jour!

étoile d'or1 300 Nouvelles fonctionnalités pour Excel, rendent Excel facile et puissant:

  • Fusionner des cellules / lignes / colonnes sans perdre de données.
  • Combiner et consolider plusieurs feuilles et classeurs.
  • Comparez les gammes, copiez plusieurs gammes, convertissez le texte en date, l'unité et la conversion de devise.
  • Compter par couleurs, sous-totaux de recherche, tri avancé et super filtre,
  • Plus Sélectionner / Insérer / Supprimer / Texte / Format / Lier / Commenter / Classeurs / Feuilles de calcul Outils ...

Capture d'écran de Kutools pour Excel

Say something here...
symbols left.
You are guest ( Sign Up? )
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.
    miguel · 12 days ago
    Code to send automatically after selecting after ok
  • To post as a guest, your comment is unpublished.
    Dhiraj Mahajan · 2 months ago
    Hi
    This code is vary excellent, by using the code i have completed my 90% of my project.
    I have same issue as mentioned by Anirudh that is table formatting. How can i format the table in email.
    Please help me......
    • To post as a guest, your comment is unpublished.
      crystal · 2 months ago
      Good Day,
      The problem can't be solved yet. Sorry for the inconvenience and thank you for your comment.
      • To post as a guest, your comment is unpublished.
        Dhiraj Mahajan · 2 days ago
        Hi, Is there any update on below.......
        • To post as a guest, your comment is unpublished.
          Dhiraj Mahajan · 2 days ago
          Hi, Also I Wanted code for "Filter by Date".
          I am working on project, on that project I wanted to filter the data by the date, actually we have filter/hide the and last 05 days to current date data and we have highlight all other data.
          Please help me to complete this project.
          Your help is very great-full for me.
  • To post as a guest, your comment is unpublished.
    Anirudh · 7 months ago
    This is great. It is working as expected. The only issue is that the format of the table is not maintained in the mail. Can you let me know how do we preserve the format of the table in the mail
  • To post as a guest, your comment is unpublished.
    Michael Ferguson · 7 months ago
    This code is great, but I need to execute with a command button rather than pressing F5 in code view. I'd like my employees to be able to fill out some info, then hit the button and have it copy the range of cells they completed and paste into email. I can get code working for the email button and separately for the copy/paste of the range of cells, but can't seem to combine both functions. Please help!!! Thanks!
    • To post as a guest, your comment is unpublished.
      crystal · 7 months ago
      Hi Michael,
      You just need to create a button (such as a Button (Form Control)) in your worksheet, then assign the macro to the button.