データ一覧からの請求書の作り方を徹底解説!エクセル関数とクエリ活用【マクロ不要】

- 「毎月、
大量のデータ一覧から手作業で請求書を作っていて時間がかかる…」 - 「マクロ/VBAを使えば自動化できるのは知っているけれど、
コードを書くのはハードルが高いし、 引き継ぎも不安。 」
Excel(エクセル)
本記事では、
Excelのバージョン
本記事は、
環境によっては、
Power Queryは「複数行を抽出する処理を、
Power Query(パワークエリ)
Power QueryはExcel標準機能の1つです。
「セル単位で処理をする関数」

Power Queryはデータ更新がリアルタイムではなく、
Power Queryを使う理由は、
- 複数セルを一度に出力できる
- 難易度が低い
1. 複数セルを一度に出力できる
「1つの条件(請求書Noなど)
- 関数の場合:
- VLOOKUP関数では1セルしか出力できない。
- スピル機能を使えば複数セルの出力が可能だが、
古いExcel(2016未満) では使用できない。 - スピル機能は、
出力範囲に記入済みセルがあると #SPILL! エラーが発生する。
- VLOOKUP関数では1セルしか出力できない。
- Power Queryの場合:
- 複数セルを一度に出力できる。
- Excel 2016以降で標準利用可能(2010、
2013もアドインで対応可能) 。 - 出力先に記入済みセルがあっても、
新規の行・列として挿入される。
- 複数セルを一度に出力できる。

今回はPower Queryを、
2. 難易度が低い
Power Query は、
一方で マクロ/VBA は自由度が高い反面、
ただし関数も併用する
単純な処理のみを行う場面では、

ここでは XLOOKUP 関数をメインに使用していますが、
ここでは、

具体的には、
VLOOKUP や FILTER 関数で行っている処理を
マスタテーブルも活用できるように
この工程は最も重要です。
Power Queryを使い、
テーブルの準備
T_請求書明細とP_請求書Noをマージ
Power Queryではデータ更新に「更新」
Power Queryは、
元のデータを変更した場合は、
- データタブのすべて更新を選択
- Power Queryで出力したテーブルを右クリック > 更新を選択
工程1の出力テーブルを基に、
出力テーブルの列幅の自動変更をOFF設定
書類フォーマットの用意
ここからは「入力補助」
テーブルの列の「名前定義」
請求書明細の商品ID列にプルダウンメニュー設定
工程3と同様に「入力補助」
テーブルの準備
テーブルの列の「名前定義」
上記で作成したシステムを使用する際は、
-
データの蓄積
売上が発生するごとに、T_請求書明細 テーブルに新しい行を追加。 -
発行情報の入力
「入力エリア」
にある以下のパラメータを書き換え: - P_請求書No : 発行したい番号
- P_得意先ID: 得意先のID
- P_請求書情報 : その他の情報(発行日や備考など)
-
データの更新
以下のいずれかを行い、
テーブルの更新操作を実行。 - データタブのすべて更新を選択
- Power Queryで出力したテーブルを右クリック > 更新を選択
-
出力
内容に間違いがないか確認し、
印刷・PDF出力を行う。
更新忘れに注意!
値を書き換えただけでは明細テーブルは変わりません。
「書き換えたら更新」
本記事では、
本システムは主に、
- 関数 : 単純な処理に使用。
- Power Query : 複数セルを一度に出力する場所に使用。
Power Queryは、
参考:» Excelのクエリとは?パワークエリでできること【活用例・業務改善方法】
当サイトでは、
具体的なPower Queryの活用方法が知りたい方は、





















