Wie speichert man ein Arbeitsblatt als PDF-Datei und versendet es als Anhang per Outlook?
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.
Hinweise:
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)
Verwandte Artikel:
- Wie speichert man einen Excel-Dateinamen mit Zeitstempel?
- Wie verwendet man die Funktion „Speichern unter“, um eine vorhandene Datei in Excel automatisch zu überschreiben?
- Wie speichert oder exportiert man mehrere/alle Blätter in separate CSV- oder Textdateien in Excel?
- Wie deaktiviert man die Optionen „Speichern“ und „Speichern unter“ in Excel?
- Wie deaktiviert man das Speichern der Arbeitsmappe, aber erlaubt nur „Speichern unter“ in Excel?
Beste Büroproduktivitätswerkzeuge
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!