複数のシートをPDF形式で印刷しようとしています。以下はコードですが、添え字に範囲外のエラーがあります。助けてください複数のページをPDFに出力する
PdfFile = ActiveWorkbook.FullName
Worksheets("Report").PageSetup.Orientation = xlLandscape
i = InStrRev(PdfFile, ".")
If i > 1 Then PdfFile = Left(PdfFile, i - 1)
PdfFile = "SPC Report " & Format(Now, "dd-mmm-yy h-mm-ss") & ".pdf" 'PdfFile & "_" & Worksheets("Report").name & ".pdf"
' Export activesheet as PDF
With Worksheets("Report")
ThisWorkbook.Sheets(ShtNames).Select
.ExportAsFixedFormat Type:=xlTypePDF, Filename:="SPC Report " & Format(Now, "dd-mmm-yy h-mm-ss") & ".pdf", Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
ThisWorkbook.Sheets("Report").Select
End With
ここで私はShtNamesを宣言し、値を割り当てます。
Dim ShtNames() As String
ReDim ShtNames(1 To ActiveWorkbook.Sheets.Count/2 + 1)
i = Sheets.Count
j = 1
Do While i > Sheets.Count/2
ShtNames(j) = Sheets(i).Name
i = i - 1
j = j + 1
Loop
私はお返事質問を編集しました。また、ShtNamesの個々の配列変数はShtNames(1)、ShtNames(2)がすべて正常に動作するように適切ですが、単一のselect文で指定されたシートを選択することはできません。 –
https://stackoverflow.com/questions/14404650/save-multiple-sheets-to-pdf – Luuklag
[複数のシートを.pdfに保存](https://stackoverflow.com/questions/14404650/save-multiple)の可能な複製-sheets-to-pdf) – Wolfie