はじめに
毎日の「日報」や「請求書」の作成、面倒に感じていませんか?
定型フォーマットに情報を転記し、印刷してPDF化して、名前をつけて保存…
この作業、1件だけならいいですが、毎日・複数人分となると手間がかかりますよね。
実はこれ、VBA(Excelマクロ)を使えば、たった1クリックで完了できます。
私はこのマクロを使うことで、1日あたり30分以上の作業時間を削減しました。
今回は、そんな便利な日報・請求書自動化マクロのテンプレートとコードを紹介します!
このページでわかること
- Excel VBAで日報や請求書を自動作成する方法
- 実際のサンプルコード&テンプレート配布
- よくあるトラブル・カスタマイズ方法の解説
業務自動化のメリットとは?
手作業からVBAに切り替えることで、以下のメリットが得られます。
✅ 時間の短縮
→ 毎日10分の作業が、ボタン1つで即完了します。
✅ ミスの削減
→ 転記ミスや計算間違いを防げるので、チェック工数も減らせます。
✅ 提出スピードUPで評価が上がる
→ 上司やクライアントからの信頼もUP!

こんにちは、らくだです
VBAを独学で学び、VBAを仕事に多く取り入れてます
仕事に使っているExcelファイルにVBA・マクロを組込むことで
毎日5分掛ってた作業が3秒で終わり、月に1度3時間かかっていた作業が30分で終わるようになりました
浮いた作業時間を年間で計算すると620時間、1日8時間労働で計算すると77.5日分の作業時間を削減したことになります
仕事の処理量を増やしつつも、仕事に余裕が生まれ
余裕があるからミスも減り、新しい提案を考える余裕も生まれました
自動化の流れ(基本構成)
以下のような手順でVBAを組みます。
Option Explicit
Sub CreateAndExportInvoicePDF()
'--- 変数宣言 ---
Dim wsInput As Worksheet
Dim wsTemplate As Worksheet
Dim customerName As String
Dim invoiceDate As String
Dim savePath As String
Dim fileName As String
Dim pdfFullPath As String
'--- シート設定 ---
Set wsInput = ThisWorkbook.Sheets("見積書")
Set wsTemplate = ThisWorkbook.Sheets("請求書")
'--- データ取得 ---
customerName = wsInput.Range("B8").Value ' 顧客名
invoiceDate = wsInput.Range("O1").Value ' 請求日
If customerName = "" Or invoiceDate = "" Then
MsgBox "顧客名と請求日を入力してください。", vbExclamation
Exit Sub
End If
'--- テンプレートへ転記 ---
With wsTemplate
.Range("B8").Value = customerName
.Range("O1").Value = invoiceDate
' 必要に応じて他の項目も追加
End With
'--- 保存先フォルダの作成 ---
savePath = ThisWorkbook.Path & "\請求書PDF\"
If Dir(savePath, vbDirectory) = "" Then
MkDir savePath
End If
'--- ファイル名作成 ---
invoiceDate = Replace(invoiceDate, "/", "")
fileName = "請求書_" & customerName & "_" & invoiceDate & ".pdf"
pdfFullPath = savePath & fileName
'--- PDFとしてエクスポート ---
With wsTemplate
.PageSetup.Orientation = xlPortrait
.PageSetup.Zoom = False
.PageSetup.FitToPagesWide = 1
.PageSetup.FitToPagesTall = 1
.ExportAsFixedFormat Type:=xlTypePDF, fileName:=pdfFullPath, Quality:=xlQualityStandard
End With
'--- 完了メッセージ ---
MsgBox "請求書をPDF保存しました:" & vbCrLf & pdfFullPath, vbInformation
End Sub
このマクロの特長
機能 | 説明 |
---|---|
転記 | 入力フォームからテンプレートに自動転記 |
PDF保存 | 1クリックでPDF形式で保存(印刷不要) |
フォルダ自動生成 | 指定フォルダがなければ作成 |
ファイル名自動化 | 請求書_顧客名_日付.pdf の形式で保存 |
シート構成
- 見積書 シート
B
8: 顧客名- O1: 請求
- 請求書 シート
- 印刷整形された雛形(見積書・請求書フォーマット)
テンプレートの紹介
こちらが実際のテンプレート例です👇

有料版との比較(表)
機能 | 無料版 | 有料版(500円) |
---|---|---|
入力データの転記 | ○ | ○ |
ファイル名の自動設定 | ○ | ○ |
PDF保存 | ○ | ○ |
セル保護・エラーチェック | ✕ | ○ |
デザイン調整・部署別出力 | ✕ | ○(要相談) |
よくあるカスタマイズ例
- 担当者ごとに出力フォルダを分けたい
- 土日・祝日の色付けを自動化したい
- 複数の請求書を一括出力したい
なども対応可能です。
お問い合わせフォームからご相談いただけます!
トラブルQ&A
よくある質問 | 回答 |
---|---|
セキュリティ警告が出ます | マクロ有効化が必要です。「マクロを有効にする」をクリックしてください。 |
Macでも使えますか? | 基本的にはWindows+Excel推奨です。Macは一部非対応あり。 |
ファイルが保存されない | フォルダの権限やパスを再確認してください。 |
おすすめのVBA学習教材
📘 書籍:できるExcel VBAプログラミング入門 仕事がサクサク進む自動化プログラムが作れる本
- 初心者にわかりやすい構成
2部構成で、基礎から実用レベルまで自然とステップアップできる構成です。例題中心なので、実務に即使える内容なのも魅力。 - 実務自動化に強い内容
タイトル通り「仕事がサクサク進む自動化プログラム」がテーマ。請求書や勤怠管理など、現場のルーチン作業を一発で効率化できる実践コードが満載です - 紙&電子書籍版あり
電子版も提供されており、PC・タブレット・スマホでの学習が可能です。
まとめ
「毎日やってるけど、実は自動化できる業務」って、たくさんあります。
VBAを使えば、ルーチン業務が一気にラクになります。
今回のテンプレートでその第一歩を踏み出してみてください。
👉 より高度な自動化をしたい方は、有料テンプレートやカスタマイズ相談も受付中です!
コメント