メモ:ExcelのVLOOKUP/XLOOKUPで一致しない(#N/A)原因トップ8と直し方(保存版)

Office:Excel

こんにちは。いーかです。
Excelで「VLOOKUP/XLOOKUPが一致しない」「#N/Aになる」問題を、原因別に最短で直すメモです。

30秒まとめ(結論1行)

一致しない原因はだいたい①型違い(文字/数値/日付)②不可視空白(NBSP)③全角半角/大小 ④範囲ミス ⑤近似一致の罠 ⑥重複キー ⑦余計な記号 ⑧そもそも存在しない。まず“キー正規化→存在確認→LOOKUP”。


最短チェックリスト(迷ったらこれ)

  1. まず存在確認:MATCHで見つかる?
  2. 型:ISNUMBER が揃ってる?
  3. 汚れ:LENLEN(TRIM) の差は?
  4. 近似一致になってない?(VLOOKUP第4引数)

① そもそも存在するか確認(最速切り分け)

=MATCH(検索値,検索列,0)
  • 見つからない → キーが違う/汚れてる/そもそも無い
  • 見つかる → LOOKUPの範囲や返す列の問題かも

キー正規化テンプレ(これを作ってから探す)

=UPPER(
  TRIM(
    CLEAN(
      SUBSTITUTE(
        SUBSTITUTE(
          ASC(A1),
        CHAR(160)," "),
      CHAR(9)," ")
    )
  )
)
  • 全角→半角(ASC)
  • NBSP/タブ/空白掃除
  • 大文字統一

※検索値側と表側の両方に“正規化列”を作ると強いです。


原因1:文字と数値が混在(最頻)

  • 片方が文字、片方が数値

対策例:

  • 数値化:VALUE
  • コードなら文字化:TEXT(A1,"0")

原因2:見えない空白(NBSP/タブ/前後)

まず掃除:

=TRIM(CLEAN(SUBSTITUTE(SUBSTITUTE(A1,CHAR(160)," "),CHAR(9)," ")))

原因3:全角/半角・大小

  • ASC / UPPER で寄せる(正規化テンプレ推奨)

原因4:範囲(列)が間違っている

  • VLOOKUPの列番号ズレ
  • XLOOKUPの検索範囲/戻り範囲ズレ
    → 範囲を見直す。テーブル化すると安定。

原因5:近似一致の罠(VLOOKUP)

VLOOKUPは第4引数を省略すると近似一致になりがち(危険)。
完全一致は FALSE


原因6:キーが重複している

  • 先頭の一致が返ってしまう
    → 重複を可視化(条件付き書式/COUNTIF)して、一意キーにする。

原因7:余計な記号が混ざる(ハイフン等)

  • SUBSTITUTE で統一(例:ハイフン削除)

原因8:XLOOKUPの一致モード設定ミス(知ってると強い)

XLOOKUPは一致モードで挙動が変わる(完全一致/ワイルドカード等)。
意図しないモードだと見つからないことがあるので、設定を確認。


最後の化粧(根本解決の後に)

見た目だけ整えるなら:

=IFERROR(LOOKUP式,"")

※ただし、まずは“キーを整える”のが本筋。


今日の1アクション

#N/Aが出たら、まず MATCHで存在確認
次に 正規化列を作って それでLOOKUPする。


ミニクイズ(答えは末尾)

Q1. VLOOKUPで完全一致にする引数は?
Q2. 見えない空白(Webコピペ由来)の代表は?
Q3. 存在確認に使える関数は?
Q4. 正規化で定番の関数3つは?


今日のひとこと(成長ログ)

LOOKUPが壊れるのは“キーが汚れてる”サイン。キーを整えると世界が静かになる。


解答とくわしい解説

A1. FALSE
A2. NBSP(CHAR(160))
A3. MATCH
A4. TRIM / CLEAN / SUBSTITUTE(+ASC/UPPERも便利)


コメント

タイトルとURLをコピーしました