VLOOKUPが使えない⁉️
Excelで「0002」と「2」が一致しない…そんな地味だけど厄介な問題に直面したこと、ありませんか?今回は、検索値の「桁数の違い」によるミスマッチをどう解決したか、実際のやりとりをもとに紹介します。
同じようなトラブルに悩んでいる人の参考になれば嬉しいです!
なぜVLOOKUPで「0002」と「2」が一致しないのか?

ExcelでVlookUpを使いたいのだが、今のシートの検索値が文字列で”0002″で4桁に統一されてるの。
検索先のコードが文字列で”2″になってて検索に引っかからないみたいなんだよね。
なんかいい方法ある?

なるほど、検索値と検索先のコードの表記が異なるせいでVLOOKUPの検索に引っかからないんですね。いくつか解決方法があります!
解決策①:検索先コードを4桁に揃える

① 検索値の統一(検索先のコードを4桁にする)
検索先のコードが”2″のように短い場合、ゼロパディングを適用して”0002″のように4桁に揃える方法です。
以下のような関数を使って、検索先のコードを4桁の文字列に統一できます。
=TEXT(A2,”0000″)
これをVLOOKUPの検索範囲に適用すれば、検索値と一致するようになります。
解決策②:検索値を数値に変換する

② 検索値の統一(検索値を数値化する)
検索値が”0002″のようなゼロ付き文字列なら、数値に変換して検索先のコード(”2″)と統一する方法もあります。
=VALUE(A2)
これにより、検索値”0002″が数値の「2」になり、VLOOKUP検索時に一致するようになります。
解決策③:INDEXとMATCH関数を使う

③ INDEX & MATCHを使う
もしVLOOKUPでうまくいかない場合、INDEX
とMATCH
の組み合わせを使う方法もあります。
=INDEX(検索範囲, MATCH(TEXT(A2,”0″), 検索列, 0))
ここで TEXT(A2,"0")
を使うことで、検索値を数値に変換し、検索先のコードと統一できます。
どの方法も状況に応じて選択可能なので、試してみてください!うまくいかなかったらまた相談してくださいね。
【補足】新しい列を作って統一する方法

えーとこれは、、
検索用に別の列を1個挿入して、その列に①または②関数挿入して、そこを検索値とするわけね?

そうですね!新しい列を作成して、そこに①または②の関数を入れ、検索に使う値を統一するのが基本的なアプローチです。
- ①の方法(検索先のコードを4桁に統一)
→ 検索対象となる列にTEXT(A2,"0000")
を適用することで、すべて4桁に揃えます。 - ②の方法(検索値を数値化)
→ 検索値の列にVALUE(A2)
を使って数値に変換し、検索先のコード(”2″など)と一致させます。
この新しく作成した列をVLOOKUPの検索値として指定することで、正しくマッチするはずです!
Excelの仕様上、文字列のゼロ付き表記と数値は別物として認識されるため、こうした調整が必要になるんですよね。
うまくいくか試してみて、もし別の課題が出てきたらまた教えてください!
まとめ:状況に応じて使い分けよう!

OK,うまくいった!ありがとう!

よかった!Excelの関数って、ちょっとした違いでうまく機能しなかったりするので、解決できて何よりです。
また何か困ったことがあれば気軽に聞いてくださいね!💡
今回紹介した方法は次の通りです👇
VLOOKUPで「0002」と「2」が一致しない原因は、文字列と数値の違いにありました。
解決方法としては、・検索先のコードを4桁に揃える
・検索値を数値に変換する
・INDEXとMATCH関数を活用する
といった方法があり、状況に応じて選べます。
新しく列を追加して統一することで、より正確な検索ができるようになるのでおすすめです!今回紹介した方法を使えば、同じようなエラーにも柔軟に対応できるはずです。
ぜひ活用してみてくださいね!
✅この記事を読んだ方へおすすめ🔗
Copilotはコードも書ける!Excel業務の相棒に最適だった話
→ 日々のExcel作業にAIを取り入れて、効率アップを狙いたい人にぴったり!
ピボットテーブルって何者?Excel上級者でも知らない超便利機能の正体
→ 表の集計や分析が劇的に楽になる!ピボットの基本を押さえておこう。
Excelで取引先データをキレイに整える|金額0削除+重複整理
→ データを整えるだけで見える景色が変わる!0円や重複の処理方法を解説。
新着記事🔗
人気記事🔗