実現したいこと
ExportAsFixedFormatやActivePresentation.PrintOutにて、複数のスライドをPDF出力する機能を作りたい
発生している問題・分からないこと
ExportAsFixedFormatのRangeTypeをppPrintSlideRangeに設定した際に、スライド番号をセットする方法がわからない
該当のソースコード
Sub ExportSlideAsPDF() '保存先のパスを設定 Dim saveFilePath As String saveFilePath = Environ("USERPROFILE") & "\Desktop\" & "testpdf" & ".pdf" 'ex)1-3番目のスライドのみをPDFとして出力 With ActivePresentation .ExportAsFixedFormat _ Path:=saveFilePath, _ FixedFormatType:=ppFixedFormatTypePDF, _ RangeType:=ppPrintSlideRange, _ PrintSlideRange:=Array(1, 3) End With End Sub
ppPrintSlideRangeの値セット
1With ActivePresentation 2 With .PrintOptions 3 .RangeType = ppPrintSlideRange 4 With .Ranges 5 .ClearAll 6 .Add 1, 1 7 .Add 3, 3 8 End With 9 End With 10 .PrintOut 11End With
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
PrintSlideRange:=Array(1, 3)にて、名前付き引数が見つかりませんと出てしまいます。
ppPrintSlideRangeの値セットのコードを試してみましたが、できませんでした。
RangeType:=ppPrintCurrentの場合は現在のスライドがPDF出力されることを確認できました。
有識者の方がいらっしゃればアドバイスいただけますと大変助かります。
補足
実行はボタン配置したスライドを「スライドショーの開始」でボタンを押して発火することを想定しています。

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。