Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Excel als pdf speichern und per Mail versenden

Excel als pdf speichern und per Mail versenden
09.06.2016 14:09:30
Marco
Hallo zusammen,
ich würde gerne mit einem VBA Code auf einmal die Datei als pdf speichern und als Anhang in eine Mail beifügen.
Die Mail sollte es automtisch öffnen und die Betreffzeile, Text, sollte von mir vorbelegt werden. Wie ist das möglich?
https://www.herber.de/bbs/user/106108.xlsm
Vielen Dank für die Info.
Grüße
Marco Blaich

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel als pdf speichern und per Mail versenden
09.06.2016 14:13:31
selli
hallo marco,
guckst du:
http://www.rondebruin.nl/win/section1.htm
gruß
selli
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Excel als PDF speichern und per Mail versenden


Schritt-für-Schritt-Anleitung

Um eine Excel-Datei als PDF zu speichern und per Mail zu versenden, kannst Du ein VBA-Makro verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein neues Modul hinzu:

    • Klicke mit der rechten Maustaste auf "VBAProject (DeineDatei.xlsx)".
    • Wähle "Einfügen" > "Modul".
  3. Kopiere und füge den folgenden Code in das Modul ein:

    Sub ExcelAlsPDFSpeichernUndMailVersenden()
       Dim OutlookApp As Object
       Dim OutlookMail As Object
       Dim DateiName As String
       Dim TabName As String
    
       ' Name des Tabellenblattes
       TabName = "Tabelle1" ' Ändere den Tab-Namen entsprechend
       DateiName = ThisWorkbook.Path & "\" & TabName & ".pdf"
    
       ' Tabellenblatt als PDF speichern
       Sheets(TabName).ExportAsFixedFormat Type:=xlTypePDF, Filename:=DateiName
    
       ' Outlook-Objekt erstellen
       Set OutlookApp = CreateObject("Outlook.Application")
       Set OutlookMail = OutlookApp.CreateItem(0)
    
       ' Mail konfigurieren
       With OutlookMail
           .To = "empfaenger@example.com"
           .Subject = "Hier ist das PDF"
           .Body = "Hallo, im Anhang findest Du das PDF."
           .Attachments.Add DateiName
           .Display ' oder .Send für das direkte Versenden
       End With
    
       ' Aufräumen
       Set OutlookMail = Nothing
       Set OutlookApp = Nothing
    End Sub
  4. Passe den Code an:

    • Ändere den Namen des Tabellenblattes in TabName, falls erforderlich.
    • Trage die Empfängeradresse in .To ein.
  5. Führe das Makro aus:

    • Drücke F5 im VBA-Editor oder wechsle zurück zu Excel und führe das Makro über die Registerkarte "Entwicklertools" aus.

Häufige Fehler und Lösungen

  • Fehler: "Objekt nicht gefunden"
    Lösung: Stelle sicher, dass der TabName korrekt ist und das Tabellenblatt existiert.

  • Fehler: Outlook öffnet sich nicht
    Lösung: Überprüfe, ob Microsoft Outlook installiert und eingerichtet ist.

  • Fehler: Kein PDF erstellt
    Lösung: Vergewissere Dich, dass der Pfad, in dem die PDF gespeichert werden soll, existiert.


Alternative Methoden

Falls Du kein VBA verwenden möchtest, kannst Du die Datei auch manuell als PDF speichern und dann über Outlook oder einen anderen E-Mail-Client versenden:

  1. Klicke auf „Datei“ > „Speichern unter“.
  2. Wähle „PDF“ aus der Liste der Dateitypen.
  3. Speichere die Datei und öffne Deinen E-Mail-Client, um die Datei manuell anzuhängen.

Praktische Beispiele

  • Einzelnes Tabellenblatt als PDF speichern:
    Du kannst das oben angegebene Makro verwenden, um ein einzelnes Tabellenblatt als PDF zu speichern und per Mail zu versenden. Ändere einfach den Tab-Namen.

  • Automatischer Versand für Berichte:
    Erstelle einen Zeitplan in Excel, um Berichte automatisch in PDF zu generieren und diese per Mail zu versenden.


Tipps für Profis

  • Verwende Fehlerbehandlung im VBA-Code:
    Füge On Error Resume Next hinzu, um Fehler im Code zu handhaben und das Programm nicht abstürzen zu lassen.

  • Sende mehrere Anhänge:
    Um mehrere Dateien anzuhängen, kannst Du die Attachments.Add Methode mehrmals aufrufen.

  • Automatisierung mit Task-Planer:
    Verwende den Windows Task-Planer, um das Makro zu festgelegten Zeiten automatisch auszuführen.


FAQ: Häufige Fragen

1. Kann ich mehrere Tabellenblätter gleichzeitig als PDF speichern?
Ja, Du kannst eine Schleife im VBA-Code verwenden, um alle benötigten Tabellenblätter nacheinander als PDF zu speichern.

2. Wie kann ich das PDF direkt senden, ohne es vorher anzuzeigen?
Ändere .Display in .Send im VBA-Code, um die Mail direkt zu senden.

3. Ist es möglich, das PDF in einen bestimmten Ordner zu speichern?
Ja, passe den DateiName-Pfad im VBA-Code an, um das PDF an einem gewünschten Ort zu speichern.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige