VLOOKUPとXLOOKUPは、検索キーに対応する値を取り出す関数です。
完全一致、見つからない品番、金額0、重複した品番を同じ表で確認します。
練習ブック・Google用の数式・入力データをダウンロード(ZIP)できます。
新規の練習ブックで試し、既存の入力や計算列へ貼り付ける前にコピーを保存してください。
確認日は2026年10月2日です。
2026年10月2日、同じ練習データと本稿の数式をGoogle Sheetsで検証しました。
XLSXをGoogle Sheetsへ変換し、Google用TXTの数式を適用した結果と実画面を確認しています。
入力例:売上シートのA1:E7
| 品番 | 分類 | 状態 | 数量 | 金額 |
|---|---|---|---|---|
| P01 | 果物 | 完了 | 2 | 200 |
| P02 | 果物 | 未処理 | 3 | 300 |
| P03 | 文具 | 完了 | 1 | 150 |
| P04 | 果物 | 完了 | 0 | 0 |
| P05 | 文具 | 完了 | 2 | 240 |
| P01 | 果物 | 完了 | 1 | 90 |
シート名を「売上」にし、1行目を見出し、2~7行目を表のデータにします。
数量と金額は数値で入力します。
P01が2行あるのは、集計と検索の違いを確かめるためです。
検索シートのA2:D5を準備する
| セル | 検索品番 |
|---|---|
| A2 | P01 |
| A3 | P04 |
| A4 | P99 |
| A5 | 先頭に半角スペースを付けたP01 |
検索シートのB1をVLOOKUP、C1をXLOOKUP、D1を一致件数にします。
B2へ次の式を入れ、B5までコピーします。
売上の範囲の1列目で探し、5列目の金額を返します。
FALSEで完全一致を指定します。
=IFNA(VLOOKUP(A2,'売上'!$A$2:$E$7,5,FALSE),"未登録")IFNAは未一致を未登録へ変えます。
列番号の誤りなど、ほかのエラーまで0へ変えるための式ではありません。
C2へ次の式を入れ、C5までコピーします。
検索範囲と結果範囲を別に指定し、0で完全一致、1で上から検索することを明示します。
=XLOOKUP(A2,'売上'!$A$2:$A$7,'売上'!$E$2:$E$7,"未登録",0,1)D2へ次の式を入れ、D5までコピーします。
検索結果が1件に見えても、元の品番が重複していないか確認できます。
=COUNTIF('売上'!$A$2:$A$7,A2)確認結果と切り分け
| 条件 | B列/C列/D列 |
|---|---|
| P01 | 200/200/2。最初の一致を返す |
| P04 | 0/0/1。登録された金額0 |
| P99 | 未登録/未登録/0 |
| 先頭スペース付きP01 | 未登録/未登録/0 |
| VLOOKUPの列番号を6にした | この表は5列。列番号の範囲外を確認 |
| XLOOKUPの範囲の長さが違う | 検索と結果の行数をそろえる |
P01の合計は200ではなく290です。
合計が目的なら最初の1件を返す検索ではなく、SUMIF・SUMIFSを使います。
未登録と0を同じ値にしてしまうと、この違いが分からなくなります。
検索キーが左端にない表では、XLOOKUPで検索列と結果列を指定できます。
近似一致や二分探索を使う場合は、並び順などの前提が変わるため、この完全一致の練習とは分けて確認します。
元の状態に戻す
追加した検索用のB~D列を元のコピーに戻します。
売上の元データを変更して合わせるのではなく、検索キーの空白や範囲を先に見比べます。
ZIPのXLSXとGoogle用TXTは互換性の表記が異なるため、Googleで式を確認する際はTXTを使えます。
公式資料

練習ファイルの使い方
練習の入力と出力は本文のセル番地でそろえています。
Google用TXTとXLSXの互換性の違いは、各記事とZIPのREADMEで確認してください。
