Direkt zum Inhalt

Wie kann ich ein Arbeitsblatt nur über Outlook aus Excel senden?

Wenn Sie ein einzelnes Arbeitsblatt aus einer Arbeitsmappe in Excel über Outlook per E-Mail versenden möchten, können Sie das Arbeitsblatt als Anhang, als Textinhalt oder als PDF-Datei senden. Aber gibt es schnellere Möglichkeiten, um dieses Problem in Excel zu lösen?

Senden Sie ein einzelnes Arbeitsblatt als Text aus Excel mit dem Befehl An E-Mail-Empfänger senden

Senden Sie ein einzelnes Arbeitsblatt als Anhang aus Excel mit VBA-Code

Senden Sie ein einzelnes Arbeitsblatt als PDF-Datei aus Excel mit VBA-Code


Pfeil blau rechte Blase Senden Sie ein einzelnes Arbeitsblatt als Text aus Excel mit dem Befehl An E-Mail-Empfänger senden

Excel unterstützt uns dabei, das aktive Arbeitsblatt mithilfe des Befehls An E-Mail-Empfänger senden als E-Mail-Inhalt per E-Mail zu versenden. Sie können wie folgt vorgehen:

Wenn Sie Excel 2007, 2010 oder 2013 verwenden, müssen Sie dies hinzufügen An E-Mail-Empfänger senden Befehl an die Quick Access Toolbar zuerst.

1. Klicken Sie auf das Symbol der Anpassen der Symbolleiste für den Schnellzugriff, und wähle Mehr Befehle, siehe Screenshot:

doc-E-Mail-Blatt1

2. Und in der Excel-Optionen Dialogfeld, wählen Sie Befehle nicht in der Multifunktionsleiste der Wählen Sie Befehle aus Dropdown-Liste, dann wählen Sie die An E-Mail-Empfänger senden Option und klicken Sie auf Hinzufügen >> Klicken Sie auf die Schaltfläche, um diesen Befehl hinzuzufügen, und klicken Sie zuletzt auf OK um diese Einstellung zu speichern. Siehe Screenshot:

doc-E-Mail-Blatt2

3. Das An E-Mail-Empfänger senden Befehl wurde in die eingefügt Quick Access Toolbar, siehe Screenshot:

doc-E-Mail-Blatt3

4. Klicken Sie dann darauf An E-Mail-Empfänger senden Symbolschaltfläche und ein Eingabeaufforderungsfeld werden in der Schaltfläche angezeigt E-Mail Kontrollkästchen aktivieren Senden Sie das aktuelle Blatt als NachrichtentextUnd klicken Sie auf OK. Siehe Screenshot:

doc-E-Mail-Blatt4

5. Über den Arbeitsblattdaten wird ein E-Mail-Bearbeitungsfeld angezeigt. Sie können Ihre Empfänger, Ihren Betreff und Ihre Einführung in das entsprechende Textfeld eingeben. Siehe Screenshot:

doc-E-Mail-Blatt5

6. Dann klick Senden Sie dieses Sheet um dieses aktive Arbeitsblatt als Nachrichtentext an Ihre spezifische Person zu senden.


Pfeil blau rechte Blase Senden Sie ein einzelnes Arbeitsblatt als Anhang aus Excel mit VBA-Code

Wenn Sie das aktive Arbeitsblatt als Anhang per E-Mail versenden möchten, kann der folgende VBA-Code einen Gefallen für Sie tun.

1. Aktivieren Sie Ihr Arbeitsblatt, das Sie senden möchten.

2. Halten Sie die Taste gedrückt ALT + F11 Tasten, und es öffnet die Microsoft Visual Basic für Applikationen-Fenster.

3. Klicken Sie Insert > Modulund fügen Sie den folgenden Code in das Feld ein Modulfenster.

VBA-Code: Aktuelles Arbeitsblatt als Anhang aus Excel senden

Sub SendWorkSheet()
'Update 20131209
Dim xFile As String
Dim xFormat As Long
Dim Wb As Workbook
Dim Wb2 As Workbook
Dim FilePath As String
Dim FileName As String
Dim OutlookApp As Object
Dim OutlookMail As Object
On Error Resume Next
Application.ScreenUpdating = False
Set Wb = Application.ActiveWorkbook
ActiveSheet.Copy
Set Wb2 = Application.ActiveWorkbook
Select Case Wb.FileFormat
Case xlOpenXMLWorkbook:
    xFile = ".xlsx"
    xFormat = xlOpenXMLWorkbook
Case xlOpenXMLWorkbookMacroEnabled:
    If Wb2.HasVBProject Then
        xFile = ".xlsm"
        xFormat = xlOpenXMLWorkbookMacroEnabled
    Else
        xFile = ".xlsx"
        xFormat = xlOpenXMLWorkbook
    End If
Case Excel8:
    xFile = ".xls"
    xFormat = Excel8
Case xlExcel12:
    xFile = ".xlsb"
    xFormat = xlExcel12
End Select
FilePath = Environ$("temp") & "\"
FileName = Wb.Name & Format(Now, "dd-mmm-yy h-mm-ss")
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
Wb2.SaveAs FilePath & FileName & xFile, FileFormat:=xFormat
With OutlookMail
    .To = ""
    .CC = ""
    .BCC = ""
    .Subject = "kte features"
    .Body = "Please check and read this document."
    .Attachments.Add Wb2.FullName
    .Send
End With
Wb2.Close
Kill FilePath & FileName & xFile
Set OutlookMail = Nothing
Set OutlookApp = Nothing
Application.ScreenUpdating = True
End Sub

Note: Im obigen Code können Sie die folgenden Informationen nach Ihren Wünschen ändern.

  • .An = ""
  • .CC = ""
  • .BCC = ""
  • .Subject = "kte features"
  • .Body = "Bitte überprüfen und lesen Sie dieses Dokument."

4. Dann klick F5 Klicken Sie auf, um diesen Code auszuführen, und ein Eingabeaufforderungsfeld wird angezeigt. Klicken Sie auf Erlauben Wenn der Fortschrittsbalken fertig ist und das aktuelle Arbeitsblatt als Anhang an Ihren Empfänger gesendet wurde.

doc-E-Mail-Blatt6


Pfeil blau rechte Blase Senden Sie ein einzelnes Arbeitsblatt als PDF-Datei aus Excel mit VBA-Code

Manchmal müssen Sie Ihren Arbeitsblattbericht an andere senden, möchten aber nicht, dass andere ihn ändern. In diesem Fall können Sie das Arbeitsblatt als PDF-Datei aus Excel senden.

1. Aktivieren Sie Ihr Arbeitsblatt, das Sie senden möchten.

2. Halten Sie die Taste gedrückt ALT + F11 Tasten, und es öffnet die Microsoft Visual Basic für Applikationen-Fenster.

3. Klicken Sie Insert > Modulund fügen Sie den folgenden Code in das Feld ein Modulfenster.

VBA-Code: Aktuelles Arbeitsblatt als PDF-Datei aus Excel senden

Sub SendWorkSheetToPDF()
'Update 20131209
Dim Wb As Workbook
Dim FileName As String
Dim OutlookApp As Object
Dim OutlookMail As Object
On Error Resume Next
Set Wb = Application.ActiveWorkbook
FileName = Wb.FullName
xIndex = VBA.InStrRev(FileName, ".")
If xIndex > 1 Then FileName = VBA.Left(FileName, xIndex - 1)
FileName = FileName & "_" + ActiveSheet.Name & ".pdf"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:=FileName
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
With OutlookMail
    .To = ""
    .CC = ""
    .BCC = ""
    .Subject = "kte features"
    .Body = "Please check and read this document."
    .Attachments.Add FileName
    .Send
End With
Kill FileName
Set OutlookMail = Nothing
Set OutlookApp = Nothing
End Sub

Hinweis: Im obigen Code können Sie die folgenden Informationen nach Bedarf ändern.

  • .An = ""
  • .CC = ""
  • .BCC = ""
  • .Subject = "kte features"
  • .Body = "Bitte überprüfen und lesen Sie dieses Dokument."

4. Dann drücken F5 Klicken Sie auf, und ein Eingabeaufforderungsfeld wird angezeigt. Klicken Sie auf Erlauben Nach Abschluss des Fortschrittsbalkens wurde das aktive Arbeitsblatt als PDF-Datei an die jeweilige Person gesendet.

doc-E-Mail-Blatt6

Anmerkungen:

1. Diese Methoden sind nur verfügbar, wenn Sie Outlook als E-Mail-Programm verwenden.

2. Nach dem Senden des aktuellen Arbeitsblatts können Sie in Outlook sicherstellen, dass die E-Mail erfolgreich gesendet wurde.


Mailingliste erstellen und dann E-Mails senden

Das Kutools for Excel's Mailingliste erstellen und Absenden E-Mails Dienstprogramme können schnell eine Mailingliste in einem Arbeitsblatt erstellen und dann denselben Betreff, denselben Inhalt und dieselben Anhänge an mehrere E-Mail-Adressen senden.
doc Mailingliste 1
doc Pfeil nach unten
doc Mailingliste 2

In Verbindung stehende Artikel:

Wie sende ich eine aktuelle Arbeitsmappe über Outlook aus Excel?

Wie kann ich eine Reihe von Zellen über Outlook aus Excel senden / per E-Mail versenden?

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 (34)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
I've found the code you post for Typhaine and it works very well for me.
So thank's very much.
Philip.
This comment was minimized by the moderator on the site
Bonjour,

Est-il possible d'utiliser le code pour joindre deux feuilles du fichier Excel dans le mail ?

Merci d'avance.
This comment was minimized by the moderator on the site
Hello, Typhaine
To send multiple sheets, please apply the below code:
Note: In the code, you should change the sheet names to your own.
Sub Mail_Sheets_Array()
    Dim FileExtStr As String
    Dim FileFormatNum As Long
    Dim Sourcewb As Workbook
    Dim Destwb As Workbook
    Dim TempFilePath As String
    Dim TempFileName As String
    Dim OutApp As Object
    Dim OutMail As Object
    Dim sh As Worksheet
    Dim TheActiveWindow As Window
    Dim TempWindow As Window
    With Application
        .ScreenUpdating = False
        .EnableEvents = False
    End With
    Set Sourcewb = ActiveWorkbook
    With Sourcewb
        Set TheActiveWindow = ActiveWindow
        Set TempWindow = .NewWindow
        .Sheets(Array("Sheet1", "Sheet2")).Copy
    End With
    TempWindow.Close
    Set Destwb = ActiveWorkbook
    With Destwb
        If Val(Application.Version) < 12 Then
           
            FileExtStr = ".xls": FileFormatNum = -4143
        Else
            
            Select Case Sourcewb.FileFormat
            Case 51: FileExtStr = ".xlsx": FileFormatNum = 51
            Case 52:
                If .HasVBProject Then
                    FileExtStr = ".xlsm": FileFormatNum = 52
                Else
                    FileExtStr = ".xlsx": FileFormatNum = 51
                End If
            Case 56: FileExtStr = ".xls": FileFormatNum = 56
            Case Else: FileExtStr = ".xlsb": FileFormatNum = 50
            End Select
        End If
    End With
    TempFilePath = Environ$("temp") & "\"
    TempFileName = "Part of " & Sourcewb.Name & " " & Format(Now, "dd-mmm-yy h-mm-ss")

    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)

    With Destwb
        .SaveAs TempFilePath & TempFileName & FileExtStr, FileFormat:=FileFormatNum
        On Error Resume Next
        With OutMail
            .To = ""
            .CC = ""
            .BCC = ""
            .Subject = "KTE features"
            .Body = "Please check and read this document"
            .Attachments.Add Destwb.FullName
           
            .Display
        End With
        On Error GoTo 0
        .Close savechanges:=False
    End With
   
    Kill TempFilePath & TempFileName & FileExtStr

    Set OutMail = Nothing
    Set OutApp = Nothing

    With Application
        .ScreenUpdating = True
        .EnableEvents = True
    End With
End Sub


Please have a try, hope it can help you!
This comment was minimized by the moderator on the site
Hej,

Muszę wysłać zakres (stały) arkusza jako obraz w treści maila jednocześnie dodając cały arkusz jako plik/załącznik. Czy jest to możliwe?
This comment was minimized by the moderator on the site
Hi the program worked just fine till 2021, I tried to run it  today, but it does send the email. As does notshow any errors
This comment was minimized by the moderator on the site
This is to inform you that i have an VBA code for send email from outlook with the help of excel vba,now i want to put "MDD Code" & " MDD Name" as well as Cells(i, 1) & Cells(i, 2) in a table like that.

MDD Code MDD Name
M123 Joydip

I am sending you the VBA Code,Request you for help.
VBA Code
----------------------------------------------------------------------------------------------------------------------------------------------
Sub sendmail()

Dim olapp As Outlook.Application

Dim olmail As Outlook.MailItem

For i = 2 To 35

Application.ScreenUpdating = False

Set olapp = New Outlook.Application

Set olmail = olapp.CreateItem(olMailItem)

With olmail

olmail.To = Cells(i, 4).Value

olmail.CC = Cells(i, 6).Value

olmail.Subject = Cells(i, 7).Value

olmail.HTMLBody = "Dear Partner ," & _

"
Please find the attchment." & _

"

MDD Code : " & Cells(i, 1) & _

"
MDD Name : " & Cells(i, 2) & _

"






Joydip Bhattacharjee" & _

"
Company" & _

"
MIS" & _

"
Country" & _

"
Contact No : 7602066491"







olmail.Attachments.Add Cells(i, 8).Value

'On Error Resume Next

'olmail.Attachments.Add Cells(i, 9).Value

'On Error Resume Next

'olmail.Attachments.Add Cells(i, 10).Value

'On Error Resume Next

'olmail.Attachments.Add Cells(i, 11).Value

'On Error Resume Next

'olmail.Attachments.Add Cells(i, 12).Value

'On Error Resume Next

'olmail.Attachments.Add Cells(i, 13).Value

'On Error Resume Next

'olmail.Attachments.Add Cells(i, 14).Value

'On Error Resume Next

olmail.Send

End With

Set olmail = Nothing

Next

End Sub
This comment was minimized by the moderator on the site
merhaba ben bunu belirli periyotta otomatik mail atmasını nasıl ayarlayabilirim
This comment was minimized by the moderator on the site
Excelent code. Thanks!
This comment was minimized by the moderator on the site
Anyway I can easily send an excel worksheet through my outlook without all this ?? I can send the worksheet context, but no the workbook as an attachment. On my work computer I can send from word and excel, but am having trouble at home.
This comment was minimized by the moderator on the site
Hi! Is it possible to use this code, but instead of sending straight away it opens up the mail?
This comment was minimized by the moderator on the site
You can try this code:
Sub SendWorkSheet()
'Update 20180109
Dim xFile As String
Dim xFormat As Long
Dim Wb As Workbook
Dim Wb2 As Workbook
Dim FilePath As String
Dim FileName As String
Dim OutlookApp As Object
Dim OutlookMail As Object
On Error Resume Next
Application.ScreenUpdating = False
Set Wb = Application.ActiveWorkbook
ActiveSheet.Copy
Set Wb2 = Application.ActiveWorkbook
Select Case Wb.FileFormat
Case xlOpenXMLWorkbook:
xFile = ".xlsx"
xFormat = xlOpenXMLWorkbook
Case xlOpenXMLWorkbookMacroEnabled:
If Wb2.HasVBProject Then
xFile = ".xlsm"
xFormat = xlOpenXMLWorkbookMacroEnabled
Else
xFile = ".xlsx"
xFormat = xlOpenXMLWorkbook
End If
Case Excel8:
xFile = ".xls"
xFormat = Excel8
Case xlExcel12:
xFile = ".xlsb"
xFormat = xlExcel12
End Select
FilePath = Environ$("temp") & "\"
FileName = Wb.Name & Format(Now, "dd-mmm-yy h-mm-ss")
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
Wb2.SaveAs FilePath & FileName & xFile, FileFormat:=xFormat
With OutlookMail
.To = ""
.CC = ""
.BCC = ""
.Subject = "kte features"
.Body = "Please check and read this document."
.Attachments.Add Wb2.FullName
.Display
' .Send
End With
Wb2.Close
Kill FilePath & FileName & xFile
Set OutlookMail = Nothing
Set OutlookApp = Nothing
Application.ScreenUpdating = True
End Sub

Please let me know if it works for you, thank you.
This comment was minimized by the moderator on the site
This code works good, however, does anyone know a way to automate a field as an alert for the email to go automatically based on a date column?
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