第14章:実用マクロ集②:出力支援
こんにちはっ🐰✨まくるです!
前回は「入力支援」マクロを紹介したけど、今回はその続き!
印刷・PDF保存・出力整形など“仕上げ”に役立つマクロ を集めたよ📄
「印刷のたびに設定変えるの面倒…」
「PDFにして送る作業が地味に時間かかる…」
そんな悩みを一発解決できる魔法、集めました🪄
🖨️ 1. 印刷設定+印刷実行マクロ
Sub PrintSheetNicely()
With ActiveSheet.PageSetup
.Orientation = xlPortrait ' 縦向き
.Zoom = False
.FitToPagesWide = 1 ' 横1ページに収める
.FitToPagesTall = False
.CenterHorizontally = True
.CenterVertically = False
End With
ActiveSheet.PrintOut
End Sub
- 印刷レイアウトをきれいに整えてから印刷!
-
PrintOut
をPreview:=True
にすれば印刷プレビューにもできるよ🖥️
🧾 2. 指定範囲だけ印刷するマクロ
Sub PrintSelection()
Selection.PrintOut
End Sub
- あらかじめ選択した範囲だけ印刷する、シンプルだけど便利な一手!
📄 3. アクティブシートをPDF保存!
Sub SaveAsPDF()
Dim filePath As String
filePath = ThisWorkbook.Path & "\" & ActiveSheet.Name & ".pdf"
ActiveSheet.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:=filePath, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=False
MsgBox "PDF保存完了:" & filePath
End Sub
- シート名でPDFを保存📁
- 保存先はブックと同じフォルダ
- 上書き防止や日付付けにも応用できるよ!
📂 4. 指定フォルダ+ファイル名でPDF出力
Sub SavePDFToCustomPath()
Dim filePath As String
filePath = "C:\Users\user\Desktop\請求書.pdf"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=filePath
MsgBox "保存しました!"
End Sub
- 完全指定型で業務帳票をPDF化→即提出にも使える✨
✨ 5. シート名を自動リネームして出力対応!
Sub RenameAndPrint()
ActiveSheet.Name = "出力用_" & Format(Now, "yyyymmdd")
ActiveSheet.PrintOut
End Sub
- 出力に便利なように シート名を日付付きでリネーム !
- 印刷 or PDF保存と組み合わせるとさらに便利!
📌 まとめ
-
PageSetup
で印刷レイアウトを整えよう! -
ExportAsFixedFormat
でPDF保存ができる - ファイル名やパス、日付付けも組み合わせて“業務マクロ化”しよう✨
次回は、 「第15章:よくあるVBAエラー集」
エラーを味方に!よくあるトラブルとその解決法を伝授するよ🐰⚠️