ich habe Dank Eurer Hilfe vor ein paar Jahren ein Problem lösen können, welches ich heute erneut in einer abgewandelten Version habe. Vielleicht kennt jemand die Lösung.
Ausgangssitutation ist, dass ich auf dem Sheet "Start" in Feld "R11" eine Auswahl treffen kann: 1-16.
Je nach dem welche Zahl eingetragen wird, erscheint im Sheet "Serienbrief" unterschiedliche Adressdaten.
Mit einem Userform kann über Checkboxen (1-16) eine Auswahl getroffen werden, welche final ausgedruckt werden sollen.
Dies habe ich folgendermaßen gemacht:
Private Sub Auswahl_print_Click()
If CheckBox1 = True Then Sheets("Start").Select
Range("R11").Select
ActiveCell.FormulaR1C1 = "1"
Sheets("Serienbrief").PrintOut
If CheckBox2 = True Then Sheets("Start").Select
Range("R11").Select
ActiveCell.FormulaR1C1 = "2"
Sheets("Serienbrief").PrintOut
etc.
Dies klappt soweit einwandfrei. Ich möchte jetzt allerdings die komplette Auswahl in ein PDF- _
Dokument exportieren. Hierzu habe ich bereits ein Skript, was sich aber bisher nur auf verschiedene Sheets bezogen hat:
Private Sub Auswahl_print_pdf_Click()
On Error GoTo Auswahl_print_pdf_Click_Error
Dim varSheets() As Variant, lngIndex As Long
If CheckBox1 Then
ReDim Preserve varSheets(lngIndex): varSheets(lngIndex) = "Sheet1": lngIndex = lngIndex + 1
End If
If CheckBox2 Then
ReDim Preserve varSheets(lngIndex): varSheets(lngIndex) = "Sheet2": lngIndex = lngIndex + 1
End If
If CheckBox3 Then
ReDim Preserve varSheets(lngIndex): varSheets(lngIndex) = "Sheet3": lngIndex = lngIndex + 1
End If
If CheckBox4 Then
ReDim Preserve varSheets(lngIndex): varSheets(lngIndex) = "Sheet4": lngIndex = lngIndex + 1
End If
If CheckBox5 Then
ReDim Preserve varSheets(lngIndex): varSheets(lngIndex) = "Sheet5": lngIndex = lngIndex + 1
End If
If CheckBox6 Then
ReDim Preserve varSheets(lngIndex): varSheets(lngIndex) = "Sheet6": lngIndex = lngIndex + 1
End If
If CheckBox7 Then
ReDim Preserve varSheets(lngIndex): varSheets(lngIndex) = "Sheet7": lngIndex = lngIndex + 1
End If
If CheckBox8 Then
ReDim Preserve varSheets(lngIndex): varSheets(lngIndex) = "Sheet8": lngIndex = lngIndex + 1
End If
If CheckBox9 Then
ReDim Preserve varSheets(lngIndex): varSheets(lngIndex) = "Sheet9": lngIndex = lngIndex + 1
End If
If CheckBox10 Then
ReDim Preserve varSheets(lngIndex): varSheets(lngIndex) = "Sheet10": lngIndex = lngIndex + 1
End If
If CheckBox11 Then
ReDim Preserve varSheets(lngIndex): varSheets(lngIndex) = "Sheet11": lngIndex = lngIndex + 1
End If
If CheckBox12 Then
ReDim Preserve varSheets(lngIndex): varSheets(lngIndex) = "Sheet12": lngIndex = lngIndex + 1
End If
If CheckBox13 Then
ReDim Preserve varSheets(lngIndex): varSheets(lngIndex) = "Sheet13": lngIndex = lngIndex + 1
End If
If CheckBox14 Then
ReDim Preserve varSheets(lngIndex): varSheets(lngIndex) = "Sheet14": lngIndex = lngIndex + 1
End If
If CheckBox15 Then
ReDim Preserve varSheets(lngIndex): varSheets(lngIndex) = "Sheet15": lngIndex = lngIndex + 1
End If
If CheckBox16 Then
ReDim Preserve varSheets(lngIndex): varSheets(lngIndex) = "Sheet16": lngIndex = lngIndex + 1
End If
Sheets(varSheets).Select
ActiveSheet.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:=ThisWorkbook.Path & "/Seriendruck.pdf", _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True
Sheets("Serienbrief").Select
On Error GoTo 0
Exit Sub
Auswahl_print_pdf_Click_Error:
MsgBox ("Druck nicht möglich. Kein Dokument ausgewählt.")
End Sub
Wie kann ich die beiden Befehle verbinden, dass der Ausdruck nicht die Kombination der einzelnen Sheets 1-16 sind, sondern immer gleiche Sheet "Serienbrief" - nur mit den unterschiedlichen Adressdaten?
Gruß
Alexander