Direkt zum Inhalt

Wie sende ich eine E-Mail mit dem Kopieren und Einfügen eines bestimmten Bereichs in den E-Mail-Text in Excel?

In vielen Fällen kann ein bestimmter Inhaltsbereich im Excel-Arbeitsblatt für Ihre E-Mail-Kommunikation hilfreich sein. In diesem Artikel stellen wir eine Methode zum Senden einer E-Mail mit einem bestimmten Bereich vor, die direkt in Excel in den E-Mail-Text eingefügt wird.

Senden Sie E-Mails mit einem bestimmten Bereich, der in Excel in den E-Mail-Text eingefügt wurde
Senden Sie E-Mails mit einem bestimmten Bereich, der mit einem erstaunlichen Tool in den E-Mail-Text eingefügt wurde

Weitere Tutorials zum Mailen in Excel ...


Senden Sie E-Mails mit einem bestimmten Bereich, der in Excel in den E-Mail-Text eingefügt wurde

Mit dem folgenden VBA-Code können Sie einen Bereich kopieren und direkt in Excel in einen Outlook-E-Mail-Text einfügen. Bitte gehen Sie wie folgt vor.

1. Drücken Sie im Arbeitsblatt, das den zu kopierenden Bereich enthält, die Taste Andere + F11 Tasten gleichzeitig zum Öffnen der Microsoft Visual Basic für Applikationen Fenster.

2. In der Öffnung Microsoft Visual Basic für Applikationen Fenster, bitte klicken Tools > Bibliographie wie unten Screenshot gezeigt.

3. In dem Referenzen - VBAProject Dialogfeld finden und überprüfen Sie die Microsoft Outlook-Objektbibliothek Option, und klicken Sie dann auf OK .

4 Klicken Insert > ModulKopieren Sie dann den folgenden VBA-Code und fügen Sie ihn in das Modulfenster ein.

VBA-Code: Senden Sie E-Mails mit einem bestimmten Bereich, der in Excel in den E-Mail-Text eingefügt wurde

Sub Send_Email()
'Updated by Extendoffice 20200119
    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 = ""
        .Body = xEmailBody
        .Display
        '.Send
    End With
    Set xMailOut = Nothing
    Set xOutApp = Nothing
    Application.ScreenUpdating = True
End Sub

Notizen:

  • 1). Bitte ändern Sie den E-Mail-Text in der Zeile xEmailBody = "Hi" & vbLf & vbLf & "Nachrichtentext, den Sie hinzufügen möchten" & vbLf & vbLf & xEmailBody & vbNewLine wie du es brauchst.
  • 2). Bitte geben Sie Ihren E-Mail-Empfänger und Betreff an (.An = und .Subject = "test") Zeilen im Code.

5. Drücken Sie die Taste F5 Schlüssel zum Ausführen des Codes. Beim Auftauchen Kutools for Excel Wählen Sie im Dialogfeld den Bereich aus, den Sie in den E-Mail-Text einfügen möchten, und klicken Sie dann auf OK Taste. Siehe Screenshot:

6. Nun wird eine E-Mail mit dem angegebenen Empfänger, Betreff, Text und dem ausgewählten Excel-Bereich erstellt. Klicken Sie auf Absenden Schaltfläche, um diese E-Mail zu senden. Siehe Abbildung gezeigt.

Note: Der VBA-Code funktioniert nur, wenn Sie Outlook als E-Mail-Programm verwenden.


Senden Sie E-Mails mit einem bestimmten Bereich, der mit einem erstaunlichen Tool in den E-Mail-Text eingefügt wurde

Wenn Sie Outlook nicht verwenden und dennoch E-Mails direkt in Excel senden möchten, in die bestimmte Bereichsdaten eingefügt wurden, empfehle ich die E-Mails senden Nutzen von Kutools for Excel für dich. Mit dieser Funktion müssen Sie lediglich den Ausgangsserver einer E-Mail-Adresse konfigurieren und in Zukunft E-Mails in Excel direkt über diese E-Mail-Adresse senden.

Vor der Bewerbung Kutools for Excel, Bitte Laden Sie es zuerst herunter und installieren Sie es.

1. Zunächst müssen Sie eine Mailingliste mit den erforderlichen Feldern erstellen.

  • Tips: Die Mailingliste muss mindestens 2 Zeilen enthalten, und die erste Zeile muss die Überschriften enthalten. (Angenommen, Sie möchten E-Mails an zwei E-Mail-Adressen in Excel senden, geben Sie diese beiden E-Mail-Adressen mit der Überschrift "E-Mail" ein (siehe Abbildung unten) ).
  • Alternativ können Sie einfach eine Mailingliste mit dem erstellen Mailingliste erstellen -Funktion

2. Wählen Sie den Bereich aus, in dem Sie die Daten zum E-Mail-Text hinzufügen möchten, und drücken Sie die Taste Ctrl + C Schlüssel, um es zu kopieren.

3. Wählen Sie die gesamte Mailingliste aus (einschließlich Überschriften) und klicken Sie auf Kutoolen Plus > E-Mails senden. Siehe Screenshot:

4. Dann die E-Mails senden Das Dialogfeld wird angezeigt.

  • 4.1) Elemente der ausgewählten Mailingliste werden in entsprechenden Feldern ausgefüllt (Sie können der Mailingliste nach Bedarf weitere Felder hinzufügen).
  • 4.2) Klicken Sie auf das Feld E-Mail-Text und drücken Sie die Taste Ctrl + V Tasten zum Einfügen der ausgewählten Bereichsdaten. Fügen Sie danach nach Bedarf weitere Inhalte hinzu.
  • 4.3 Deaktivieren Sie das Kontrollkästchen Senden Sie E-Mails über Outlook Box;
  • 2.4) Klicken Sie auf Ausgehende Servereinstellungen Taste. Siehe Screenshot:

5. Dann die SMTP-Einstellungen (Outgoing Server) - Neues Schema Das Dialogfeld wird angezeigt. Bitte geben Sie die E-Mail-Adresse mit den Servereinstellungen ein und geben Sie einen Ordner an, in dem alle gesendeten E-Mails nach dem Überprüfen der gespeichert werden sollen Speichern Sie gesendete E-Mails an Feld, und klicken Sie dann auf OK Schaltfläche, um die Einstellungen zu speichern.

6. Wenn es zum zurückkehrt E-Mails senden Klicken Sie im Dialogfeld auf die Schaltfläche Absenden Schaltfläche zum Senden der E-Mail.

Ab sofort können Sie mit dieser Funktion E-Mails direkt in Excel senden.

  Wenn Sie eine kostenlose Testversion (30 Tage) dieses Dienstprogramms wünschen, Bitte klicken Sie, um es herunterzuladenund wenden Sie dann die Operation gemäß den obigen Schritten an.


In Verbindung stehende Artikel:

Senden Sie E-Mails an E-Mail-Adressen, die in Excel-Zellen angegeben sind
Angenommen, Sie haben eine Liste mit E-Mail-Adressen und möchten E-Mail-Nachrichten in großen Mengen direkt in Excel an diese E-Mail-Adressen senden. Wie erreicht man das? Dieser Artikel zeigt Ihnen Methoden zum Senden von E-Mails an mehrere E-Mail-Adressen, die in Zellen in Excel angegeben sind.

Fügen Sie beim Senden von E-Mails in Excel die Outlook-Signatur ein
Angenommen, Sie möchten eine E-Mail direkt in Excel senden. Wie können Sie die Standard-Outlook-Signatur in diese E-Mail einfügen? Dieser Artikel enthält zwei Methoden, mit denen Sie beim Senden von E-Mails in Excel eine Outlook-Signatur hinzufügen können.

Senden Sie eine E-Mail mit mehreren in Excel angehängten Anhängen
In diesem Artikel wird über das Senden einer E-Mail über Outlook mit mehreren in Excel angehängten Anhängen gesprochen.

Senden Sie eine E-Mail, wenn das Fälligkeitsdatum in Excel erreicht wurde
Wenn das Fälligkeitsdatum in Spalte C beispielsweise kleiner oder gleich 7 Tagen ist (aktuelles Datum ist 2017/9/13), senden Sie eine E-Mail-Erinnerung an den angegebenen Empfänger in Spalte A mit dem angegebenen Inhalt in Spalte B. Vorgehensweise es erreichen? Dieser Artikel enthält eine VBA-Methode, mit der Sie ausführlich darauf eingehen können.

Senden Sie E-Mails automatisch basierend auf dem Zellenwert in Excel
Angenommen, Sie möchten eine E-Mail über Outlook an einen bestimmten Empfänger senden, basierend auf einem angegebenen Zellenwert in Excel. Wenn beispielsweise der Wert von Zelle D7 in einem Arbeitsblatt größer als 200 ist, wird automatisch eine E-Mail erstellt. In diesem Artikel wird eine VBA-Methode vorgestellt, mit der Sie dieses Problem schnell lösen können.

Weitere Tutorials zum Mailen in Excel ...

Beste Office-Produktivitätstools

🤖 Kutools KI-Assistent: Revolutionieren Sie die Datenanalyse basierend auf: Intelligente Ausführung   |  Code generieren  |  Erstellen Sie benutzerdefinierte Formeln  |  Analysieren Sie Daten und erstellen Sie Diagramme  |  Rufen Sie Kutools-Funktionen auf...
Beliebte Funktionen: Suchen, markieren oder identifizieren Sie Duplikate   |  Leere Zeilen löschen   |  Kombinieren Sie Spalten oder Zellen, ohne Daten zu verlieren   |   Runde ohne Formel ...
Super-Lookup: VLookup mit mehreren Kriterien    VLookup mit mehreren Werten  |   VLookup über mehrere Blätter hinweg   |   Unscharfe Suche ....
Erweiterte Dropdown-Liste: Erstellen Sie schnell eine Dropdown-Liste   |  Abhängige Dropdown-Liste   |  Mehrfachauswahl Dropdown-Liste ....
Spaltenmanager: Fügen Sie eine bestimmte Anzahl von Spalten hinzu  |  Spalten verschieben  |  Schalten Sie den Sichtbarkeitsstatus ausgeblendeter Spalten um  |  Vergleichen Sie Bereiche und Spalten ...
Ausgewählte Funktionen: Rasterfokus   |  Designansicht   |   Große Formelleiste    Arbeitsmappen- und Blattmanager   |  Ressourcen (Autotext)   |  Datumsauswahl   |  Arbeitsblätter kombinieren   |  Zellen verschlüsseln/entschlüsseln    Senden Sie E-Mails nach Liste   |  Superfilter   |   Spezialfilter (Filter fett/kursiv/durchgestrichen...) ...
Top 15 Toolsets12 Text Tools (Text hinzufügen, Zeichen entfernen, ...)   |   50+ Chart Typen (Gantt-Diagramm, ...)   |   40+ Praktisch Formeln (Berechnen Sie das Alter basierend auf dem Geburtstag, ...)   |   19 Einfügen Tools (QR-Code einfügen, Bild aus Pfad einfügen, ...)   |   12 Umwandlung (Conversion) Tools (Zahlen zu Wörtern, Currency Conversion, ...)   |   7 Zusammenführen & Teilen Tools (Erweiterte Zeilen kombinieren, Zellen teilen, ...)   |   ... und mehr

Verbessern Sie Ihre Excel-Kenntnisse mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über 300 erweiterte Funktionen, um die Produktivität zu steigern und Zeit zu sparen.  Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen ...

Beschreibung


Office Tab Bringt die Oberfläche mit Registerkarten in Office und erleichtert Ihnen die Arbeit erheblich

  • Aktivieren Sie das Bearbeiten und Lesen von Registerkarten in Word, Excel und PowerPoint, Publisher, Access, Visio und Project.
  • Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters und nicht in neuen Fenstern.
  • Steigert Ihre Produktivität um 50 % und reduziert jeden Tag Hunderte von Mausklicks für Sie!
Comments (22)
Rated 4.5 out of 5 · 1 ratings
This comment was minimized by the moderator on the site
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, I have the same issue, could you see if you could update it please, otherwise this is excellent.
Many thanks
Rated 4.5 out of 5
This comment was minimized by the moderator on the site
Hi Andy Mitchell,
If you want to maintain the format of the table, the following VBA script can do you a favor. Please give it a try. Thank you.
Sub Send_Email()
'Updated by Extendoffice 20220616
    Dim xRg As Range
    Dim I, J As Long
    Dim xAddress As String
    Dim xMailOut As Object
    Dim xOutApp As Object
    On Error Resume Next
    Set xOutApp = CreateObject("Outlook.Application")
    Set xMailOut = xOutApp.CreateItem(olMailItem)
    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)
    With xMailOut
        .Subject = "Test"
        .To = ""
        .HTMLBody = RangetoHTML(xRg)
        .Display
        '.Send
    End With
    Set xMailOut = Nothing
    Set xOutApp = Nothing
    Application.ScreenUpdating = True
End Sub

 ' The following VBA script is cited from this page:
 ' https://stackoverflow.com/questions/18663127/paste-excel-range-in-outlook
Function RangetoHTML(rng As Range)
' By Ron de Bruin.
    Dim fso As Object
    Dim ts As Object
    Dim TempFile As String
    Dim TempWB As Workbook

    TempFile = Environ$("temp") & "/" & Format(Now, "dd-mm-yy h-mm-ss") & ".htm"

    'Copy the range and create a new workbook to past the data in
    rng.Copy
    Set TempWB = Workbooks.Add(1)
    With TempWB.Sheets(1)
        .Cells(1).PasteSpecial Paste:=8
        .Cells(1).PasteSpecial xlPasteValues, , False, False
        .Cells(1).PasteSpecial xlPasteFormats, , False, False
        .Cells(1).Select
        Application.CutCopyMode = False
        On Error Resume Next
        .DrawingObjects.Visible = True
        .DrawingObjects.Delete
        On Error GoTo 0
    End With

    'Publish the sheet to a htm file
    With TempWB.PublishObjects.Add( _
         SourceType:=xlSourceRange, _
         Filename:=TempFile, _
         Sheet:=TempWB.Sheets(1).Name, _
         Source:=TempWB.Sheets(1).UsedRange.Address, _
         HtmlType:=xlHtmlStatic)
        .Publish (True)
    End With

    'Read all data from the htm file into RangetoHTML
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set ts = fso.GetFile(TempFile).OpenAsTextStream(1, -2)
    RangetoHTML = ts.ReadAll
    ts.Close
    RangetoHTML = Replace(RangetoHTML, "align=center x:publishsource=", _
                          "align=left x:publishsource=")

    'Close TempWB
    TempWB.Close savechanges:=False

    'Delete the htm file we used in this function
    Kill TempFile

    Set ts = Nothing
    Set fso = Nothing
    Set TempWB = Nothing
End Function
This comment was minimized by the moderator on the site
This worked perfectly, thank you so much.
I can now add my spin on it to get it doing what I need.
This comment was minimized by the moderator on the site
Hi Paul Johnson,

Very happy to help you solve the problem. Have a good day at work.
This comment was minimized by the moderator on the site
hello,
can you help me on below
I have create excel sheet & updated 10 supplier mail detailI have send mail through excel to all 10 supplier with individual sheet attachment with individual mail.
I want to paste excel data in outlook body instead of attachment in mail
can any one help me
This comment was minimized by the moderator on the site
Hi,
Instead of selecting the range, I want to select multiple pivots in the excel.
can you please help me.
This comment was minimized by the moderator on the site
Hi,
Instead of selecting the range manually, I want to select the range automatically.
This comment was minimized by the moderator on the site
Hi Raman,
In the below code, please replace the range "A1:C5" in line Set xRg = Range("A1:C5") with your own range.

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 = Range("A1:C5")
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 = ""
.Body = xEmailBody
.Display
'.Send
End With
Set xMailOut = Nothing
Set xOutApp = Nothing
Application.ScreenUpdating = True
End Sub
This comment was minimized by the moderator on the site
Hi experts, Do we have updates on how the format maintained?
This comment was minimized by the moderator on the site
Hi Ther,
Can't figure it out. Sorry for that.
This comment was minimized by the moderator on the site
i am seeing a compile error (User-defined type not defined". Please help me out to overcome this.
This comment was minimized by the moderator on the site
Hi,
Please get into the Reference window by clicking Tools > references. Scroll down to find and check the Microsoft Outlook Object Library box and click the OK button to finish the setting.
This comment was minimized by the moderator on the site
this is pasting as a text. Kindly suggest how to send the table or the same format which is copied from the excel.
This comment was minimized by the moderator on the site
Code to send automatically after selecting after ok
This comment was minimized by the moderator on the site
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......
This comment was minimized by the moderator on the site
Good Day,
The problem can't be solved yet. Sorry for the inconvenience and thank you for your comment.
This comment was minimized by the moderator on the site
Hi, Is there any update on below.......
This comment was minimized by the moderator on the site
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.
This comment was minimized by the moderator on the site
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
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations