Zum Hauptinhalt springen

Wie speichert man ein Arbeitsblatt als PDF-Datei und versendet es als Anhang per Outlook?

Author: Siluvia Last Modified: 2025-05-28

In einigen Fällen müssen Sie möglicherweise ein Arbeitsblatt als PDF-Datei über Outlook versenden. Normalerweise müssen Sie das Arbeitsblatt manuell als PDF-Datei speichern, dann eine neue E-Mail in Ihrem Outlook mit dieser PDF-Datei als Anhang erstellen und sie schließlich senden. Es ist zeitaufwendig, dies manuell Schritt für Schritt zu erledigen. In diesem Artikel zeigen wir Ihnen, wie Sie schnell ein Arbeitsblatt als PDF-Datei speichern und es automatisch als Anhang über Outlook in Excel versenden können.

Speichern Sie ein Arbeitsblatt als PDF-Datei und versenden Sie es als Anhang mit VBA-Code


Speichern Sie ein Arbeitsblatt als PDF-Datei und versenden Sie es als Anhang mit VBA-Code

Sie können den folgenden VBA-Code ausführen, um das aktive Arbeitsblatt automatisch als PDF-Datei zu speichern und es dann als Anhang über Outlook zu versenden. Bitte gehen Sie wie folgt vor.

1. Öffnen Sie das Arbeitsblatt, das Sie als PDF speichern und versenden möchten, und drücken Sie gleichzeitig die Tasten Alt + F11, um das Fenster Microsoft Visual Basic for Applications zu öffnen.

2. Klicken Sie im Fenster Microsoft Visual Basic for Applications auf Einfügen > Modul. Kopieren Sie dann den folgenden VBA-Code und fügen Sie ihn in das Codefenster ein. Siehe Screenshot:

VBA-Code: Speichern Sie ein Arbeitsblatt als PDF-Datei und versenden Sie es als Anhang

Sub Saveaspdfandsend()
Dim xSht As Worksheet
Dim xFileDlg As FileDialog
Dim xFolder As String
Dim xYesorNo As Integer
Dim xOutlookObj As Object
Dim xEmailObj As Object
Dim xUsedRng As Range

Set xSht = ActiveSheet
Set xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)

If xFileDlg.Show = True Then
   xFolder = xFileDlg.SelectedItems(1)
Else
   MsgBox "You must specify a folder to save the PDF into." & vbCrLf & vbCrLf & "Press OK to exit this macro.", vbCritical, "Must Specify Destination Folder"
   Exit Sub
End If
xFolder = xFolder + "\" + xSht.Name + ".pdf"

'Check if file already exist
If Len(Dir(xFolder)) > 0 Then
    xYesorNo = MsgBox(xFolder & " already exists." & vbCrLf & vbCrLf & "Do you want to overwrite it?", _
                      vbYesNo + vbQuestion, "File Exists")
    On Error Resume Next
    If xYesorNo = vbYes Then
        Kill xFolder
    Else
        MsgBox "if you don't overwrite the existing PDF, I can't continue." _
                    & vbCrLf & vbCrLf & "Press OK to exit this macro.", vbCritical, "Exiting Macro"
        Exit Sub
    End If
    If Err.Number <> 0 Then
        MsgBox "Unable to delete existing file.  Please make sure the file is not open or write protected." _
                    & vbCrLf & vbCrLf & "Press OK to exit this macro.", vbCritical, "Unable to Delete File"
        Exit Sub
    End If
End If

Set xUsedRng = xSht.UsedRange
If Application.WorksheetFunction.CountA(xUsedRng.Cells) <> 0 Then
    'Save as PDF file 
    xSht.ExportAsFixedFormat Type:=xlTypePDF, Filename:=xFolder, Quality:=xlQualityStandard
    
    'Create Outlook email 
    Set xOutlookObj = CreateObject("Outlook.Application")
    Set xEmailObj = xOutlookObj.CreateItem(0)
    With xEmailObj
        .Display
        .To = ""
        .CC = ""
        .Subject = xSht.Name + ".pdf"
        .Attachments.Add xFolder
        If DisplayEmail = False Then
            '.Send
        End If
    End With
Else
  MsgBox "The active worksheet cannot be blank"
  Exit Sub
End If
End Sub

3. Drücken Sie die Taste F5, um den Code auszuführen. Wählen Sie im Dialogfeld Durchsuchen einen Ordner aus, um diese PDF-Datei zu speichern, und klicken Sie dann auf die Schaltfläche OK.

run vba code to select a folder to save this PDF file

Hinweise:

1. Das aktive Arbeitsblatt wird nun als PDF-Datei gespeichert. Die PDF-Datei wird mit dem Namen des Arbeitsblatts benannt.
2. Wenn das aktive Arbeitsblatt leer ist, erhalten Sie nach dem Klicken auf die Schaltfläche OK ein Dialogfeld, wie im folgenden Screenshot dargestellt.

If the active worksheet is blank,a warning prompt box is popped out

4. Nun wird eine neue Outlook-E-Mail erstellt, und Sie sehen, dass die PDF-Datei als Anhang im Feld Anhänge aufgeführt ist. Siehe Screenshot:

a new Outlook email is created with the PDF file as an attachment

5. Verfassen Sie diese E-Mail und senden Sie sie.
6. Dieser Code ist nur verfügbar, wenn Sie Outlook als Ihr E-Mail-Programm verwenden.

Speichern Sie ganz einfach ein Arbeitsblatt oder mehrere Arbeitsblätter auf einmal als separate PDF-Dateien:

Die Funktion „Arbeitsmappe trennen“ von Kutools für Excel kann Ihnen helfen, ganz einfach ein Arbeitsblatt oder mehrere Arbeitsblätter auf einmal als separate PDF-Dateien zu speichern, wie in der unten gezeigten Demo. Laden Sie es herunter und probieren Sie es jetzt aus! (30-tägige kostenlose Testversion)

save multiple worksheets as separate PDF files by kutools


Verwandte Artikel:

Beste Büroproduktivitätswerkzeuge

🤖 Kutools AI-Assistent: Revolutionieren Sie die Datenanalyse basierend auf: Intelligente Ausführung   |  Code generieren  |  Benutzerdefinierte Formeln erstellen  |  Daten analysieren und Diagramme generieren  |  Erweiterte Funktionen aufrufen
Beliebte Funktionen: Finden, Hervorheben oder Doppelte markieren   |  Leere Zeilen löschen   |  Spalten oder Zellen kombinieren ohne Datenverlust   |   Runden ...
Erweiterte SVERWEIS: Mehrfachkriterien SVERWEIS    Mehrfachwert SVERWEIS  |   Mehrblatt-SVERWEIS   |   Fuzzy Match ....
Erweiterte Dropdown-Liste: Schnell Dropdown-Liste erstellen   |  Abhängige Dropdown-Liste   |  Mehrfachauswahl Dropdown-Liste ....
Spaltenmanager: Eine bestimmte Anzahl von Spalten hinzufügen  |  Spalten verschieben  |  Sichtbarkeitsstatus ausgeblendeter Spalten umschalten  |  Bereiche & Spalten vergleichen ...
Hervorgehobene Funktionen: Gitterfokus   |  Entwurfsansicht   |   Erweiterte Formelleiste    Arbeitsmappe & Arbeitsblatt-Manager   |  AutoText-Bibliothek (Auto Text)   |  Datumsauswahl   |  Daten zusammenführen   |  Zellen verschlüsseln/entschlüsseln    E-Mail senden nach Liste   |  Spezialfilter   |   Spezialfilter (Filtern fett/kursiv/durchgestrichen...) ...
Top15 Werkzeugsets12 Textwerkzeuge (Text hinzufügen, Bestimmte Zeichen löschen, ...)   |   50+ Diagramm typen (Gantt-Diagramm, ...)   |   40+ Praktische Formeln (Alter basierend auf dem Geburtsdatum berechnen, ...)   |   19 Einfügewerkzeuge (QR-Code einfügen, Bild aus Pfad einfügen, ...)   |   12 Konvertierungswerkzeuge (In Wörter umwandeln, Währungsumrechnung, ...)   |   7 Konsolidieren & Aufteilen Werkzeuge (Erweiterte Zeilen zusammenführen, Zellen aufteilen, ...)   |   ... und mehr

Verbessern Sie Ihre Excel-Fähigkeiten mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über300 erweiterte Funktionen zur Steigerung der Produktivität und Zeitersparnis.  Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen...


Office Tab bringt eine Registerkartenoberfläche zu Office und macht Ihre Arbeit viel einfacher

  • Aktivieren Sie die Bearbeitung und das Lesen mit Registerkarten in Word, Excel, PowerPoint, Publisher, Access, Visio und Project.
  • Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters, anstatt in neuen Fenstern.
  • Steigert Ihre Produktivität um50 % und reduziert täglich hunderte von Mausklicks für Sie!