VLOOKUP関数で単価を自動取得して合計計算!納品書や請求書に使えるExcel実例を解説

VLOOKUP関数は、検索値に対応するデータを表の中から取り出す関数として知られていますが、実は「検索結果をそのまま計算に活用する」ことで、日々の作業を大きく効率化できる場面も多くあります。

たとえば、

  • 商品コードをもとに単価を自動表示し、小計や合計を計算する

  • 数量や時間数と組み合わせて、売上・工数・請求金額を算出する

  • マスタの価格が変わっても自動で計算結果が更新される

といった処理は、VLOOKUP関数と他の計算式を組み合わせることで簡単に実現できます。

本記事では、**「VLOOKUPで値を取得 → 計算につなげる」**という考え方をもとに、納品書や請求書などで役立つ自動計算の作り方をわかりやすく解説します。

VLOOKUP関数は検索だけでなく「計算」にも使える!

VLOOKUP関数は、「商品コードを入力すると自動で商品名や単価が表示される」といった検索用途でよく使われる関数です。
ですが、それだけで終わらせるのはもったいない!
取得した値をそのまま計算式に組み込むことで、日々の業務がよりスマートに自動化できます。


■ たとえばこんな使い方ができます

操作 内容
商品コードを入力する 商品マスタから自動で単価を取得
数量を入力する 単価 × 数量 の小計が自動で計算される
複数行の商品がある 小計列の合計で総額を自動計算できる


■ VLOOKUPで取得した「単価」をそのまま掛け算

=VLOOKUP(A2, 商品マスタ!A2:C100, 3, FALSE) * B2
  • A2:商品コード

  • 商品マスタ!A2:C100:マスタ表(A列に商品コード、C列に単価)

  • B2:数量

このように書けば、商品コードに対応する単価を取得し、それに数量を掛けることで小計が自動算出されます。

※画像の例では、複数行に同じ形式の数式をコピーするため、検索値や検索範囲がズレないように絶対参照($A4$B$2:$C$7)で指定しています。
このようにしておくと、下方向にコピーしても正しい商品情報を参照し続けることができ、作業効率もアップします。

VLOOKUP($A4, マスタ!$B$2:$C$7, 2, FALSE)
→ $A4:列(A)は固定、行(4)は自動で変わるように
→ $B$2:$C$7:範囲全体を固定(マスタは動かないように)

■ 計算に活かすことで、次のような効果があります

  • 商品単価をマスタで一元管理 → 単価改定時も自動反映

  • 手入力の必要がなくなり、入力ミスや計算漏れを防止

  • 小計や合計を自動集計して、納品書や請求書の作成もスムーズに

VLOOKUPを使った自動小計・合計の作り方

ここでは、VLOOKUP関数で取得した単価を使って「小計 → 合計」までを自動計算する方法を具体的に解説します。
納品書や請求書でよくある形式なので、業務への応用もしやすい内容です。


小計の計算方法|単価 × 数量の組み合わせ

たとえば以下のような商品マスタがあるとします:

商品コード 商品名 単価
A001 ノート 150
A002 ペン 100
A003 消しゴム 80

注文一覧に「商品コード」と「数量」が入力されているとき、VLOOKUPを使って単価を取得し、数量と掛け算すれば小計が自動で計算できます。

■ 小計の計算式(例):

=VLOOKUP(A4,商品マスタ!A2:C7,3,FALSE)*C4
  • A4:商品コード

  • C4:数量

  • 3:単価列が商品マスタの3列目にある場合

商品コードに応じて単価が自動取得され、数量と掛け算された小計が出力されます。

商品コードに応じてVLOOKUPで単価を取得し、それに数量を掛けて小計(1行ごとの金額)を計算しています。
さらに IFERROR 関数を使うことで、未入力行でもエラー表示が出ないように整えています。

=IFERROR(VLOOKUP($A4,商品マスタ!$A$2:$C$7,3,FALSE)*C4,"")
  • $A4:商品コード(行だけ変化、列は固定)

  • 3:単価はマスタの3列目

  • *C4:数量を掛けて金額を算出

  • IFERROR(..., ""):未入力時は空欄に

IFERROR関数については以下の記事にて詳しく紹介しています。
VLOOKUP関数のエラー対策まとめ|IFERROR・IFNAや列構造の工夫でトラブルを防ぐ実務テクニック集

IFERROR関数とIF関数の違いとは?エラー処理の使い分けを実務例でわかりやすく解説


合計の計算方法|小計列をまとめる

各行の小計が計算できたら、合計金額も自動で集計できます。
シンプルなSUM関数を使えばOKです。

■ 合計金額の計算例:

=SUM(D4:D8)
  • D4:D8:小計列の範囲(必要に応じて調整)


小計・合計の構成イメージ(簡易表)

商品コード 数量 単価(VLOOKUP) 小計
A001 2 150 300
A002 3 100 300
A003 1 80 80

→ 合計:680円(=SUM(小計列))


ワンポイント:

  • エラー対策としてIFERRORを併用すると見た目がきれいになります

=IFERROR(VLOOKUP(A2, 商品マスタ!A2:C100, 3, FALSE) * B2, "")

→ 商品コードが空欄の場合など、エラーが出ないように空白表示できて安心です。

納品書・請求書での応用パターン

VLOOKUP関数を使って「単価×数量=小計」の仕組みを作ることで、納品書や請求書の作成が一気に効率化できます。
ここでは、実務でよくある帳票作成にどのように活かせるかを具体的に紹介します。


商品マスタを分けておくとメンテナンス性がアップ

商品名や単価などの情報を別シートにまとめておくことで、マスタの修正=計算結果の自動反映が可能になります。

| 例:商品マスタ(別シート) |

商品コード 商品名 単価
A001 ノート 150
A002 ペン 100

→ 商品の値上げ・名称変更なども マスタを修正すれば自動反映されるため、複数の納品書を一括で更新できます。


入力作業が最小限に|商品コード&数量だけでOK

納品書の入力欄は、基本的に「商品コード」と「数量」だけで済みます。
VLOOKUPを使って商品名・単価・小計を自動表示することで、記入ミスを防ぎ、作成時間も短縮できます。

商品名を自動表示にする例:

=IFERROR(VLOOKUP(納品書!$A4,商品マスタ!$A$2:$C$7,2,FALSE),””)


見積書・注文書・出荷明細にもそのまま応用可能

この仕組みは、納品書だけでなく以下の帳票にも応用可能です:

  • 見積書:数量を仮で入力して合計額を提示

  • 注文書:商品コードを指定するだけで内容が自動表示

  • 出荷明細:注文一覧から納品データを作成


デザインを整えれば提出用にも十分使える

Excelで作った納品書でも、表の罫線や印刷設定を整えれば実務書類として活用可能です。
マスタ連携型の納品書テンプレートとして保存しておけば、今後の作成も効率的です。

TEXT関数で桁区切りや円マーク表示も可能

請求書や納品書では、金額を「1,200円」などの形で桁区切り+通貨マーク付きで見やすく整えることが重要です。
その際に便利なのが TEXT 関数です。

■ 書式例(文字列として整形):

=TEXT(数値, "#,##0円")

例:

=TEXT(SUM(D4:D8), "#,##0円")
  • 数値を「カンマ区切り+円マーク付き」の文字列として表示

  • 見栄えを整えつつ、PDF化・印刷にも適したレイアウトになります


■ 注意点:小計の数値にはTEXT関数を使わない

金額欄(小計)にまで TEXT 関数を使ってしまうと、**合計が計算できなくなる(=文字列扱いになる)**ため注意が必要です。
小計は「数値のまま」、見た目だけ整えるのは合計欄で行うのが実務上の鉄則です。

文字列として処理されているため、セル左横に警告マーク(ビックリマーク)が表示されています。

警告マークについては以下の記事にて紹介しています。気になる方はこちらもご参考下さい。
Excelのビックリマーク(!)とは?セルやファイルで見かける警告の正体を解説した記事を公開しました!


■ 補足:セルの表示形式(書式設定)でも整形可能

金額の見た目を整える方法としては、**TEXT関数以外にも「セルの表示形式を設定する方法」**があります。

  • 対象セルを選択して右クリック → [セルの書式設定] → [通貨]や[ユーザー定義]で「#,##0″円”」などを指定

  • 見た目は整いつつ、値は数値のまま保持されるので、後続の集計やソートにも対応できます

「セルの表示形式」→「ユーザー定義」で #,##0円 と入力すれば、
計算には影響せず、表示だけ「カンマ+円マーク」付きに整えることができます。

※TEXT関数との違いは「値の中身が文字列にならない」点です。
合計や再利用が必要な場面では、表示形式で整える方が実務では安全な場合もあります。

■ TEXT関数と表示形式の使い分けポイント

目的 おすすめ方法 理由
印刷・PDF出力用など、表示重視 TEXT関数 表示を完全に制御できる(文字列化)
計算や集計を後続で行う 表示形式(セルの書式設定) 値を数値として扱えるため安全

このように、目的に応じて整形方法を使い分けることで、より使いやすく・壊れにくいExcelシートが作成できます。

まとめ|検索して終わりではもったいない!計算まで自動化しよう

VLOOKUP関数は「データを検索して表示する」という役割だけでなく、取得した値をそのまま計算式に活かすことで、より実務に役立つ自動化ツールとして使うことができます。


本記事で紹介した活用ポイント

  • VLOOKUPで取得した単価を数量と掛け算して小計を自動計算

  • 複数行の小計をまとめて合計する仕組みもシンプルに実現可能

  • 納品書や請求書などの帳票作成を、コードと数量だけで完結

  • IFERRORやROUND、TEXT関数を併用すれば見た目も安心・整然


今後の業務での活用に向けて

VLOOKUPは「検索だけの関数」と思われがちですが、マスタ連携・計算・帳票作成まで幅広く活用できる汎用性の高い関数です。
データを一元管理しつつ、ミスなく素早く計算結果を反映させる仕組みを構築すれば、Excel業務の精度とスピードが大きく向上します。


あわせて読みたい関連記事