PDF anhand eines Kriteriums danach Email

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: PDF anhand eines Kriteriums danach Email
von: Matthias
Geschrieben am: 29.06.2015 15:58:52

Hallo,
der nachfolgende Code ist super zum generieren von PDF`s und dessen Speicherung:
IM MODUL
Sub SeriendruckVPDF(ByVal strSheet As String)
Dim wksData As Worksheet, wksPrint As Worksheet
Dim iRow As Integer
Dim FolderPDF As String, File_PDF As String
On Error GoTo Fehler
Set wksData = ActiveWorkbook.Worksheets(strSheet)
Set wksPrint = ActiveWorkbook.Worksheets("V") 'Name des zu drucken Blatts ggf. anpassen
iRow = 8
FolderPDF = ActiveWorkbook.Path & Application.PathSeparator & "Verzichterklärung"
If Dir(FolderPDF, vbDirectory) = "" Then
VBA.MkDir FolderPDF
End If
FolderPDF = FolderPDF & Application.PathSeparator
Do Until IsEmpty(wksData.Cells(iRow, 1))
If UCase(wksData.Cells(iRow, 45).Value) = "A" Then 'Wert in Spalte D prüfen
wksPrint.Range("T1").Value = wksData.Cells(iRow, 1).Value 'lfd. Nr
wksPrint.Range("U1").Value = strSheet
wksPrint.Calculate '???? - wenn Formelberechnungen aktualisiert werden müssen
File_PDF = FolderPDF & wksPrint.Range("A5").Text & "_" _
& wksPrint.Range("A6").Text & "_" & wksPrint.Range("U1").Text & ".pdf" 'Zellen und verbindenden Text ggf. anpassen
wksPrint.ExportAsFixedFormat Type:=xlTypePDF, Filename:=File_PDF, _
Quality:=xlQualityStandard, IgnorePrintareas:=False, Openafterpublish:=False
End If
iRow = iRow + 1
Loop
Err.Clear
Fehler:
With Err
Select Case .Number
Case 0 'Alles OK
Case 9
MsgBox "Fehler-Nr.: " & .Number & vbLf & .Description & vbLf & vbLf _
& "Blatt """ & strSheet & """ ist nicht vorhanden!"
Case Else
MsgBox "Fehler-Nr.: " & .Number & vbLf & .Description
End Select
End With
End Sub
und

Private Sub CommandButton21_Click()
'Schaltfläche für Seriendruck im Userform
  With Me.ComboBox8
    If .ListIndex = -1 Then
      MsgBox "Es wurde noch kein Blatt mit Daten in der Combobox ausgewählt!"
    Else
      Me.Hide 'zwingend erforderlich, wenn mit PrintPreview gearbeitet wird
      Call SeriendruckVPDF(strSheet:=Me.ComboBox8.Value)
      Me.Show
    End If
  End With
End Sub
Kann man es noch so anpassen, dass kein Ordner erstellt wird sondern nach der Erstellung der PDF immer die Emailadresse ausgewählt wird und die Datei als Email verschickt wird.
Im ausgewählten Blatt stehen die Emailadressen der jeweiligen Datensätze in der Spalte BC.
Werden nun die Datensätze durchlaufen und das Kriterium erkannt, wird die PDF erstellt, Outlook geöffnet und die Datei an die betreffende Emailadresse versendet.
Kann mir hier jemand weiterhelfen?
Gruß

Bild

Betrifft: AW: PDF anhand eines Kriteriums danach Email
von: Raphael H
Geschrieben am: 29.06.2015 18:45:45
Hallo Matthias,
die PDF Datei muss immer zuerst gespeichert werden, bevor sie als Email weiterversendet werden kann.
Nach dem versenden, kannst du sie aber beruhigt mit "Kill ....." wieder löschen.
Beispiele wie man aus Excel eine Email mit Anhang versendet findest du in der Recherche (Suche nach email aus Excel).
Gruess
Raphael

 Bild

Beiträge aus den Excel-Beispielen zum Thema "PDF anhand eines Kriteriums danach Email"