AW: Pdf druckens in Abhängigkeit erstellen
24.06.2015 07:41:09
Matthias
Hallo,
so die allerletzte Anpassung bräuchte ich noch.
Sub VV()
Dim wks As Worksheet
Dim iRow As Integer
Set wks = Worksheets("Mitgliederdaten")
iRow = 7
Do Until IsEmpty(wks.Cells(iRow, 1))
If wks.Cells(iRow, 14).Value = "V" Then
Worksheets("VV").Range("$T$1") = wks.Cells(iRow, 1)
Worksheets("VV").PrintOut
End If
iRow = iRow + 1
Loop
End Sub
Der Code funktioniert super.
Nur sollte es noch auf PDF umgestellt werden. So wie hier.
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
Der Name der Dateien setzt sich dabei zusammen aus den Werten der laufenden Zellen der Spalten B und C. Desweiteren gibt es auch die Vorgabe des zu druckenden Zielblattes nicht, ich möchte nur den ersten Code so erweiteren, dass PDF in einem Pfad erstellt werden und die PDF mit einem definierten Name abgespeichert werden.
Vielen Dank
Gruß