[[20200430145647]] 『複数シートを個別にPDF化』(孟双璧) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『複数シートを個別にPDF化』(孟双璧)

エクセルで、複数のワークシートを選択しておいて、
それらをシート毎にワークシート名でPDF化したいのですが、
なかなか出来ません。
選択したシートをまとめて一つのPDF、
全てのシートをシート毎にPDFというのは出来るのですが、
その合わせ技が出来ません。
選択するワークシートは毎回違うので固定名ではありません。
宜しくお願いします。

< 使用 Excel:Excel2013、使用 OS:Windows10 >


https://www.relief.jp/docs/018455.html

(マナ) 2020/04/30(木) 15:20


マナさんありがとうございます。
頂いたページを参考に以下のマクロを作成しましたが、
実行すると選択したシートごとにPDF化されるのですが、
PDFの内容が選択した最初のシートの内容ですべてPDF化されます。
今一歩なのですが、どなたか教えていただけないでしょうか。

Sub 選択されているシートごとにPDF化()

  Dim sh As Object
  For Each sh In ActiveWindow.SelectedSheets
      sh.ExportAsFixedFormat Type:=xlTypePDF, _
      Filename:=ThisWorkbook.Path & "\" & _
      sh.Name, _
      Quality:=xlQualityStandard, _
      IncludeDocProperties:=True, _
      IgnorePrintAreas:=False, OpenAfterPublish:=True
  Next sh
End Sub
(孟双璧) 2020/05/03(日) 22:21

あら、確かにそうなりますね。
1行追加するのは問題ありますか。

sh.Select

(マナ) 2020/05/03(日) 22:52


 PDFにする範囲を各シートごとに指定する必要があるのでは???

 例えば各シートの印刷範囲だとすると
sh.Range(sh.PageSetup.PrintArea).
とか、、

 あと、、拡張子の & ".pdf" も付けた方がいいのでは???

 For Each sh In ActiveWindow.SelectedSheets
    sh.Range(sh.PageSetup.PrintArea).ExportAsFixedFormat _
            Type:=xlTypePDF, _
            Filename:=ThisWorkbook.Path & "\" & sh.Name & ".pdf", _
            Quality:=xlQualityStandard, _
            IncludeDocProperties:=True, _
            ignorePrintAreas:=False, _
            OpenAfterPublish:=True
 Next sh
(SoulMan) 2020/05/03(日) 22:57

マナさんありがとうございます。
sh.select
を追加しただけで出来ました。
ありがとうございます!

SoulManさんありがとうございます。
参考にさせていただきます。
(孟双璧) 2020/05/03(日) 23:04


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.