こんにちは。いーかです。
Excelの「データ整形」で、見た目は同じなのに一致判定や検索、VLOOKUP/XLOOKUPがズレる問題を、原因別に掃除するメモです。
30秒まとめ(結論1行)
一致しない原因はだいたい3つ:①全角/半角 ②大文字/小文字 ③見えない空白(NBSP/タブ/前後スペース)。まず“正規化してから比較”すると解決する。
まず最短チェック(差分を見える化)
=A1=B1がFALSEなら、次も見る=LEN(A1)と=LEN(B1)が違う → 空白/不可視文字の可能性大=CODE(MID(A1,1,1))で先頭文字の違いを疑う(余裕があれば)
症状(あるある)
- 同じに見えるのに
=A1=B1が FALSE - VLOOKUP/XLOOKUPで一致しない
- フィルターで同じ値が別グループになる
先に安全ネット
上書きせず 別列で整形→値貼り付けが安心。
原因1:空白・不可視文字(最頻)
まずこれで“汚れ”を落とす:
=TRIM(CLEAN(SUBSTITUTE(SUBSTITUTE(A1,CHAR(160)," "),CHAR(9)," ")))
- NBSP(160)→普通スペース
- タブ(9)→スペース
- CLEANで制御文字
- TRIMで前後空白+連続空白
原因2:大文字/小文字
比較やキーを揃えるなら:
=UPPER(A1)
(小文字に寄せたいなら LOWER)
原因3:全角/半角(日本語環境の決定版)
全角英数 → 半角
=ASC(A1)
半角英数 → 全角
=JIS(A1)
※ASC/JISは日本語環境で“効く範囲が広い”ので、全角半角の正規化に便利。
正規化テンプレ(迷ったらこれ1本)
空白掃除+大小統一+全角半角寄せ(全角→半角)までまとめて:
=UPPER(
TRIM(
CLEAN(
SUBSTITUTE(
SUBSTITUTE(
ASC(A1),
CHAR(160)," "),
CHAR(9)," ")
)
)
)
比較用テンプレ(正規化してから比べる)
- 正規化した値同士を比較:
=正規化(A1)=正規化(B1)
- まずは別列で「正規化済みキー」を作るのが実務で強い。
今日の1アクション
一致しない2セルがあったら、まず別列で
正規化テンプレを当てて、その結果を比較する。
ミニクイズ(答えは末尾)
Q1. Webコピペ由来の“見えない空白”の代表は?
Q2. 前後スペースを消す定番関数は?
Q3. 全角英数を半角に寄せる関数は?
Q4. 大文字に統一する関数は?
今日のひとこと(成長ログ)
比較は“そのまま”じゃなく、“整えてから”。これだけで一致事故が激減する。
解答とくわしい解説
A1. NBSP(CHAR(160))
A2. TRIM
A3. ASC
A4. UPPER


コメント