Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1432to1436
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
PDF anhand eines Kriteriums danach Email
29.06.2015 15:58:52
Matthias
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ß

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: PDF anhand eines Kriteriums danach Email
29.06.2015 18:45:45
Raphael
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
Anzeige

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige