0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

エクセルのVBAで複数の特定シートをPDF出力

Last updated at Posted at 2023-05-28

やり方

下記のようなシートがある場合の例。
image.png

サンプル
'『左から〇番目』という指定だとシート位置を変更した時にバグる。
'(余計な改修が発生)
'なので、シート名で指定の方が良いと思う。
'『無関係シート』のようなPDF対象外のシートが間にあっても例外にならない。
Dim sheet_list_(1) As String
sheet_list_(0) = "pdf対象1"
sheet_list_(1) = "pdf対象2"

'xlsmファイルと同じフォルダーにtest.pdfという名前で出力。
Dim file_path_ As String
file_path_ = ThisWorkbook.Path & "\test.pdf"

'対象シートを選択。
Worksheets(sheet_list_).Select

'PDF出力。
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=file_path_

'複数シート選択状態のままだと誤編集の恐れがあるので、
'一番左のシートを選択した状態にリセット。
Worksheets(1).Select

配列で指定した名前のシートが存在しない場合

下記のように例外。

インデックスが有効範囲にありません。

image.png

PDFファイルの上書きが発生する場合

  • 例外にならない。
  • 『上書きが発生しますけどよいですか?』のような確認ダイアログは出ない。

問答無用で上書きされる ので注意。

参考サイトさん

バージョン

Windows 10 Pro 22H2 19045.3031
Microsoft Excel for Microsoft 365 MSO (バージョン 2304 ビルド 16.0.16327.20200) 32 ビット

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?