【2026年版】Excel突合関数の使い分け|VLOOKUPはもう古い?
Excelでデータ突合に使うVLOOKUP・XLOOKUP・INDEX+MATCHを徹底比較。各関数のメリット・デメリット、表記揺れを解決する方法まで解説。
「Excelでデータを突合したいけど、どの関数を使えばいいかわからない」
経理担当者やデータ管理者なら、一度は悩んだことがあるのではないでしょうか。VLOOKUP、XLOOKUP、INDEX+MATCH、COUNTIF、EXACT…Excelには様々な関数がありますが、目的に応じた使い分けが重要です。
この記事では、データ突合によく使われる関数を網羅的に解説し、それぞれのメリット・デメリットを比較します。
データ突合に使えるExcel関数一覧
1. VLOOKUP(ブイルックアップ)
最もポピュラーな検索関数。指定した値を検索し、対応するデータを返します。
=VLOOKUP(検索値, 範囲, 列番号, FALSE)
使用例:請求書番号から金額を検索
=VLOOKUP(A2, 請求データ!A:D, 4, FALSE)
| メリット | デメリット |
|---|---|
| 知名度が高く情報が豊富 | 検索列が左端にないと使えない |
| 直感的で覚えやすい | 列番号を数値で指定(列挿入でズレる) |
| 多くのバージョンで使用可能 | 完全一致のみ(表記揺れに弱い) |
ポイント:第4引数は必ず FALSE を指定。TRUEにすると近似一致になり意図しない結果になることがあります。
2. XLOOKUP(エックスルックアップ)
VLOOKUPの進化版。Excel 2021以降またはMicrosoft 365で使用可能です。
=XLOOKUP(検索値, 検索範囲, 戻り範囲, 見つからない場合)
使用例:取引先名から担当者を検索
=XLOOKUP(B2, 取引先!A:A, 取引先!C:C, "未登録")
| メリット | デメリット |
|---|---|
| 検索列が左端でなくてもOK | Excel 2019以前では使えない |
| 見つからない場合のデフォルト値を設定可能 | 完全一致の壁は越えられない |
| 列番号ではなく範囲で指定(ズレにくい) | 古いファイルとの互換性に注意 |
ポイント:VLOOKUPの欠点をほぼ解消した次世代関数。使える環境なら積極的に採用すべき。
3. INDEX + MATCH(インデックス・マッチ)
プロ御用達の組み合わせ。VLOOKUPより柔軟で高速です。
=INDEX(戻り範囲, MATCH(検索値, 検索範囲, 0))
使用例:商品コードから単価を検索
=INDEX(C:C, MATCH(A2, B:B, 0))
| メリット | デメリット |
|---|---|
| 検索列の位置を問わない | 数式が長くなりがち |
| VLOOKUPより処理速度が速い | 初心者には理解しにくい |
| 行方向・列方向両対応 | 完全一致しかできない |
ポイント:大量データを扱う場合はVLOOKUPより高速。慣れれば最も使い勝手がいい。
4. COUNTIF(カウントイフ)
存在確認・重複チェックに最適。条件に合うセルの個数を数えます。
=COUNTIF(範囲, 条件)
使用例:重複データの検出
=COUNTIF(A:A, A2) > 1
| メリット | デメリット |
|---|---|
| 重複の有無を素早く確認 | どの行が重複か特定できない |
| シンプルで使いやすい | 「一致」の判定のみ |
| 条件付き書式と相性がいい | 差異の内容は教えてくれない |
ポイント:条件付き書式と組み合わせて、重複セルを自動ハイライトできる。
5. EXACT(イグザクト)
厳密一致を判定。大文字・小文字、全角・半角も区別します。
=EXACT(セル1, セル2)
使用例:2つのセルが完全一致かチェック
=EXACT(A2, B2)
| メリット | デメリット |
|---|---|
| 厳密な比較が可能 | 厳密すぎて実用的でないことも |
| TRUE/FALSEで明確に結果が出る | 「株式会社」と「(株)」は不一致 |
| 誤差を見逃さない | 人間の目では「同じ」でも不一致 |
ポイント:データ品質チェックに便利だが、表記揺れには無力。
6. SUMIF / SUMIFS(サムイフ)
条件付き集計。突合後の金額集計に便利です。
=SUMIF(条件範囲, 条件, 合計範囲)
=SUMIFS(合計範囲, 条件範囲1, 条件1, 条件範囲2, 条件2)
使用例:特定取引先の請求合計
=SUMIF(A:A, "株式会社ABC", C:C)
| メリット | デメリット |
|---|---|
| 条件付きで合計できる | 表記揺れがあると正しく集計されない |
| 複数条件も可能(SUMIFS) | 条件が多いと数式が複雑に |
7. IFERROR(イフエラー)
エラー処理の必需品。#N/Aなどのエラーを回避します。
=IFERROR(数式, エラー時の値)
使用例:VLOOKUPのエラーを空白に
=IFERROR(VLOOKUP(A2, データ!A:B, 2, FALSE), "")
| メリット | デメリット |
|---|---|
| エラー表示を防げる | エラーの原因を隠してしまう |
| レポートがきれいになる | 問題に気づきにくくなる |
8. CONCATENATE / CONCAT(連結)
複数セルを結合。複合キーでの突合に使います。
=CONCAT(A2, "-", B2)
使用例:年月+取引先で一意キーを作成
=CONCAT(YEAR(A2), "-", MONTH(A2), "-", B2)
関数の比較表
| 関数 | 主な用途 | 難易度 | 表記揺れ対応 | 推奨場面 |
|---|---|---|---|---|
| VLOOKUP | データ検索 | ★☆☆ | ❌ | 簡単な突合 |
| XLOOKUP | データ検索 | ★☆☆ | ❌ | M365利用者 |
| INDEX+MATCH | 柔軟な検索 | ★★☆ | ❌ | 複雑な検索条件 |
| COUNTIF | 重複チェック | ★☆☆ | ❌ | 存在確認 |
| EXACT | 厳密比較 | ★☆☆ | ❌ | 完全一致の検証 |
| SUMIF | 条件付き集計 | ★☆☆ | ❌ | 金額の合計 |
| IFERROR | エラー処理 | ★☆☆ | — | エラー表示回避 |
関数だけでは解決できない「3つの壁」
壁1:表記揺れ問題
どの関数を使っても、以下のケースは「不一致」と判定されます。
| パターン | 例1 | 例2 | 関数の判定 |
|---|---|---|---|
| 法人格表記 | 株式会社ABC | (株)ABC | ❌ 不一致 |
| 全角半角 | ABC商事 | ABC商事 | ❌ 不一致 |
| スペース | 山田 太郎 | 山田太郎 | ❌ 不一致 |
| カタカナ | ヤマダ | ヤマダ | ❌ 不一致 |
→ 人間なら「同じ」とわかるのに、Excelは「違う」と判断
壁2:メンテナンスコスト
| 問題 | 詳細 |
|---|---|
| 列を追加 | VLOOKUPの列番号が狂う |
| シート名変更 | 参照エラー |
| データ量増加 | 処理速度低下 |
→ 数式を「育てる」手間がかかり続ける
壁3:属人化リスク
| 問題 | 詳細 |
|---|---|
| 複雑な数式 | 作った人しかわからない |
| 担当者退職 | 「ブラックボックス化」 |
| 引き継ぎ | 時間がかかる |
→ 個人のスキルに依存した運用になりがち
関数の限界を超える:AI突合ツール
なぜAIなら表記揺れを解決できるのか?
| 観点 | 従来の関数 | AI突合 |
|---|---|---|
| 判断基準 | 形(フォーマット) | 意味(コンテキスト) |
| 一致判定 | 完全一致のみ | あいまい一致に対応 |
| ルール | 人間が定義 | AIが自動で学習 |
Totsugoの実力
| データ1 | データ2 | Excel関数 | Totsugo |
|---|---|---|---|
| (株)ソニー | ソニー株式会社 | ❌ #N/A | ✅ 一致 |
| アマゾン ジャパン | Amazon Japan G.K. | ❌ #N/A | ✅ 一致 |
| 交通費 1,000円 | 旅費交通費 1000 | ❌ #N/A | ✅ 一致 |
関数を使うべき場面 vs AI突合を使うべき場面
関数がおすすめ
| 条件 | 詳細 |
|---|---|
| データがクリーン | 表記揺れなし |
| 件数が少ない | 月50件以下 |
| 熟練者がいる | Excel操作に習熟 |
| コスト重視 | 追加費用をかけたくない |
AI突合がおすすめ
| 条件 | 詳細 |
|---|---|
| 表記揺れが多い | クリーニングが困難 |
| 件数が多い | 月100件以上 |
| 属人化を解消したい | 誰でも使える |
| 残業を減らしたい | 時間短縮が優先 |
まとめ
Excelの突合関数は強力ですが、万能ではありません。
| 関数 | 得意なこと | 苦手なこと |
|---|---|---|
| VLOOKUP | 簡単な検索 | 表記揺れ |
| XLOOKUP | 柔軟な検索 | 古いExcel |
| INDEX+MATCH | 高速な検索 | 数式の複雑さ |
| COUNTIF | 重複チェック | 差異の特定 |
| EXACT | 厳密比較 | 柔軟性 |
「どの関数を使えばいいか」を悩む時間を、「AIに任せて終わらせる」時間に変えませんか?