Clever-Excel-Forum

Normale Version: Excel VBA Sheet als PDF abspeichern und per Mail versenden
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

Ich würde gerne per Button die aktuelle Excel Seite als PDF speichern (Ordner selbst wählen wo gespeichert werden soll) und diese Datei dann per Mail verschicken.

Kann mir hier zufällig jemand weiterhelfen?

Danke & viele Grüße
https://lmgtfy.app/?q=excel+vba+pdf+per+email+versenden

Außerdem bietet Excel exakt das bereits als fertige Buttonlösung an - guckst du Datei --> Freigeben --> pdf. Kein Makro, kein Hirnschmalz, einfach klicken, fertig.
Und sogar noch einfacher: Auf die Schnellstartleiste legen, dann brauchst du nur einen Mausklick.
Hallöchen,

Du kannst natürlich statt google auch die Suche hier im Forum verwenden. Die Frage wurde auch bei uns schon öfter behandelt.
Hallo Pascala,

falls Du es mit VBA machen möchtest, hier ein Beispiel....

Code:

Option Explicit

Sub Blatt_senden()
'PDF exportieren und HTML-eMail versenden
 Dim sFilename As String
  
'Aktuelle Seite als PDF exportieren
 With Application.FileDialog(msoFileDialogFolderPicker)
      .AllowMultiSelect = False
      .Title = "Bitte den gewünschten Ordner auswählen!"
      .InitialFileName = ""
      .InitialView = msoFileDialogViewThumbnail
      .ButtonName = "Auswählen"
      If .Show = -1 Then
         sFilename = .SelectedItems(1) & "\" & ActiveSheet.Name & ".pdf"
      Else
         Exit Sub
      End If
 End With
 
 ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sFilename
    
'Jetzt die eMail senden
 With CreateObject("Outlook.Application").CreateItem(0)
  .BodyFormat = 2                               'HTML-Format, Angabe optional

  .To = "Meier@Web.de"                          'Empfänger
  .Subject = "Ihre Bestellung..."               'Betreff
  .GetInspector
  .HTMLBody = "<body style='font-family:Arial; font-size:10pt;color:#000000'>" _
            & "Hallo zusammen,<br><br>" _
            & "anbei finden Sie die aktuelle Seite.<br>" _
            & "</body>" & .HTMLBody             'Nachricht incl. Signatur
         .ReadReceiptRequested = False
         'Dateianhang
  If Dir$(sFilename) <> "" Then
     .Attachments.Add sFilename                 'Anhang dran, wenn vorhanden
  End If
  .Display                                      'eMail anzeigen
 End With
  
End Sub

______________________
viele Grüße aus Freigericht
Karl-Heinz
Immer schön alles vorkauen und den TE nur ja nicht in die unangenehme Situation bringen, dass er selbst etwas dazu beitragen muss. Das bringt's.