Ich verwende den folgenden Code, um ausgewählte Tabellen aus Excel 2010 in eine einzelne PDF-Datei zu exportieren ...
ThisWorkbook.Sheets(Array("Sheet1", "Sheet2", "Sheet3")).Select
ActiveSheet.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:="C:\temp.pdf", _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True
Mein Problem ist, dass es nur das erste Blatt exportiert. Irgendwelche Ideen?
Nachdem Sie eine Gruppe von Blättern ausgewählt haben, können Sie Auswahl verwenden
Erwägen:
Sub luxation()
ThisWorkbook.Sheets(Array("Sheet1", "Sheet2", "Sheet3")).Select
Selection.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:="C:\TestFolder\temp.pdf", _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True
End Sub
EDIT # 1:
Weitere Tests haben ergeben, dass diese Technik von der Gruppe der Zellen abhängt ausgewählt auf jedem Arbeitsblatt. Um eine umfassende Ausgabe zu erhalten, verwenden Sie Folgendes:
Sub Macro1()
Sheets("Sheet1").Activate
ActiveSheet.UsedRange.Select
Sheets("Sheet2").Activate
ActiveSheet.UsedRange.Select
Sheets("Sheet3").Activate
ActiveSheet.UsedRange.Select
ThisWorkbook.Sheets(Array("Sheet1", "Sheet2", "Sheet3")).Select
Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\Users\James\Desktop\pdfmaker.pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
True
End Sub
Ich bin ziemlich durcheinander. Ich verwende auch Excel 2010. Ich habe versucht, zwei Blätter als eine einzige zu speichern PDF mit:
ThisWorkbook.Sheets(Array(1,2)).Select
**Selection**.ExportAsFixedFormat xlTypePDF, FileName & ".pdf", , , False
aber ich habe nichts als leere Seiten. Es hat beide Blätter gerettet, aber nichts auf ihnen. Es war nicht, bis ich verwendet habe:
ThisWorkbook.Sheets(Array(1,2)).Select
**ActiveSheet**.ExportAsFixedFormat xlTypePDF, FileName & ".pdf", , , False
dass ich eine einzige PDF Datei mit beiden Blättern habe.
Ich habe versucht, diese beiden Seiten manuell mit Auswahl im Dialogfeld Optionen zu speichern, um die beiden von mir ausgewählten Seiten zu speichern, aber leere Seiten zu erhalten. Als ich die Option "Aktive Arbeitsblätter" ausprobierte, bekam ich, was ich wollte. Als ich dies als Makro aufzeichnete, verwendete Excel ActiveSheet, als die PDF-Datei erfolgreich veröffentlicht wurde. Was gibt?
das habe ich mir ausgedacht, als ich Probleme mit der Antwort von @ asp8811 hatte (vielleicht meine eigenen Schwierigkeiten)
"Dadurch werden die ersten beiden Blätter in ein PDF eingefügt." Hinweis: Jedes ws sollte mit Seitenumbrüchen zum Drucken gesteuert werden, was etwas umständlich ist. "Dadurch wird das PDF explizit in die aktuelle Richtung verschoben
Sub luxation2()
Dim Filename As String
Filename = "temp201"
Dim shtAry()
ReDim shtAry(1) ' this is an array of length 2
For i = 1 To 2
shtAry(i - 1) = Sheets(i).Name
Debug.Print Sheets(i).Name
Next i
Sheets(shtAry).Select
Debug.Print ThisWorkbook.Path & "\"
ActiveSheet.ExportAsFixedFormat xlTypePDF, ThisWorkbook.Path & "/" & Filename & ".pdf", , , False
End Sub