こんにちは。いーかです。
Excelの「データ整形」で、PDFやWebからコピペした文字列が“なぜか揃わない/一致しない”問題を、最短で掃除するメモです。
30秒まとめ(結論1行)
PDF/WEBコピペで汚れる原因は「NBSP(CHAR(160))」と「タブ(CHAR(9))」が多い。まずNBSP→普通スペースへ、タブ→スペースへ、最後にTRIM+CLEANで仕上げて値貼り付け。
症状(こうなったら汚れを疑う)
- 見た目は同じなのに
=A1=B1が FALSE - VLOOKUP/XLOOKUPで一致しない(キーが同じに見える)
- TRIMしても空白が消えない/余計な空白が残る
- 並べ替え・フィルターで想定外の順になる
先に安全ネット(事故防止)
いきなり上書きしないで、対象列を 別列(例:B列)で整形してから、最後に 値貼り付けで確定すると安心です。
汚れの主犯:NBSP と タブ
1) NBSP(ノーブレークスペース)
- 見た目は普通の空白っぽい
- でも Excel的には 普通のスペースと別物
- だから一致判定がズレる
→ Excelでは CHAR(160) として扱えます。
2) タブ
- 表をコピペした時に入りがち
- 列の区切りとして混ざる
→ Excelでは CHAR(9)
手順:最短で“人間が読める文字列”に戻す
ステップ1:NBSPを普通スペースへ
=SUBSTITUTE(A1,CHAR(160)," ")
ステップ2:タブをスペースへ
=SUBSTITUTE(A1,CHAR(9)," ")
ステップ3:仕上げ(TRIM+CLEAN)
NBSPを普通スペースに変換してから、まとめて整えるのがコツ。
=TRIM(CLEAN(SUBSTITUTE(SUBSTITUTE(A1,CHAR(160)," "),CHAR(9)," ")))
仕上げの確定(ここ重要)
整形結果がOKなら、整形列をコピーして
形式を選択して貼り付け → 値
で元データに上書き(または新しい列として保存)。
関数が苦手な人向け(おまけ:置換でできる範囲)
関数が苦手なら、まず Ctrl+H(置換)で タブ→スペース を試すのも手です。
ただしNBSPは残りやすいので、確実に直したいなら上の式が強いです。
(タブ入力は環境によってフォーカス移動が起きる場合があるので、その時は式ルートへ)
うまくいかない時の追加チェック(迷子防止)
- 全角スペースが混ざってるかも →
" "を半角へ寄せる
=TRIM(SUBSTITUTE(TRIM(CLEAN(SUBSTITUTE(SUBSTITUTE(A1,CHAR(160)," "),CHAR(9)," ")))," "," "))
- 改行が混ざってるかも(PDF由来でありがち) → CR/LFも掃除
=TRIM(CLEAN(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1,CHAR(13),""),CHAR(10)," "),CHAR(160)," "),CHAR(9)," ")))
※迷ったら「下の万能テンプレ」へ。
迷ったらこれ(万能テンプレ)
NBSP / タブ / 改行 / 全角スペースをまとめて掃除する“最後の砦”。
=TRIM(
CLEAN(
SUBSTITUTE(
SUBSTITUTE(
SUBSTITUTE(
SUBSTITUTE(
SUBSTITUTE(A1,CHAR(13),""),
CHAR(10)," "),
CHAR(160)," "),
CHAR(9)," "),
" "," ")
)
)
使い方(最短)
B列に式 → 下までコピー → 結果をコピー → 値貼り付けで上書き
今日の1アクション
=A1=B1 がFALSEになって困ったら、まずこれを1回通す:
=TRIM(CLEAN(SUBSTITUTE(SUBSTITUTE(A1,CHAR(160)," "),CHAR(9)," ")))
※これで直らなければ、上の「万能テンプレ」へ。
ミニクイズ(答えは末尾)
Q1. PDF/WEBコピペで混ざりがちな“見た目が空白”の犯人は?
Q2. タブは CHAR( ) で何番?
Q3. 最後の仕上げで使う2つの関数は?
Q4. 仕上げ後に必ずやると安全な確定作業は?
今日のひとこと(成長ログ)
「同じに見える」ほど危ない。見えない文字を掃除すると、Excelはまっすぐになる。
解答とくわしい解説
A1. NBSP(CHAR(160))
A2. CHAR(9)
A3. TRIM と CLEAN
A4. 値貼り付け(形式を選択して貼り付け→値)


コメント