カテゴリ
パソコン関連のお得情報
ExcelでA4サイズに設定したのに、PDFにエクスポートするとサイズが変わるのはなぜ?
PDFサイズの問題を解決し、快適なドキュメント管理を実現しましょう。
A4サイズでPDFエクスポートしたはずなのに、なぜ違うサイズになるの?
考えられる原因は主に2つあります。
①のExcelページ設定の問題については、見直してみましょう
原因 | 詳細 |
---|---|
Excelのページ設定の誤り | 用紙サイズがA4になっていない、余白が広すぎる |
印刷範囲の設定間違い | 印刷範囲がA4サイズを超えている |
VBAコードの記述ミス | PDF出力時のパラメータ設定が不適切 |
これらの原因を一つずつ検証することで、解決の糸口が見つかるはずです。
原因がわからなくて、途方に暮れそう…
もしVBAコードに自信がない場合は、専門家に見てもらうのも一つの手です。
Excelのページ設定が問題なく設定されている場合は、アクティブになっているプリンタが原因の場合があります
解決方法は、印刷設定のプリンターをMicrosoft Print to PDFに変更してエクスポートするだけです
プリンターを変更するだけで、エクスポートされたPDFも無事指定したサイズになります
VBAコードを使って自動でPDF出力している場合は、毎回印刷設定のプリンターを変更しなくても、コードで指定することもできます
まずプリンタ設定でMicrosoft Print to PDF を選択し、下記のコードを実行してプリンタ名を確認します。
Sub CheckCurrentPrinter()
MsgBox "現在のプリンタ: " & Application.ActivePrinter, vbInformation, "プリンタ確認"
End Sub
パソコンによってプリンタ名がことなりますが、Microsoft Print to PDF on Ne01: など Ne0●: が追加されます。
次にVBAのThisWorkbookに下記コードを追加します。
Private Sub Workbook_Open()
' 一時的にプリンタを設定
Application.ActivePrinter = "Microsoft Print to PDF on Ne●●:" ' プリンタ名を変更
End Sub
これで、Bookを開くたびにプリンタがMicrosoft Print to PDF に変更されます。
もしExcelを閉じるときに元のプリンタにもどしたい場合は
Private Sub Workbook_BeforeClose(Cancel As Boolean)
' 必要に応じて元のプリンタに戻す
Application.ActivePrinter = "元のプリンタ名" ' 任意
こちらのコードを記載して、ブックを閉じる際にプリンタを元にもどしましょう。