 カテゴリ
カテゴリ
パソコン関連のお得情報

 悩む人
 悩む人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 = "元のプリンタ名" ' 任意こちらのコードを記載して、ブックを閉じる際にプリンタを元にもどしましょう。