• 公開日:

ExcelのVLOOKUP関数で日本語の文字列検索ができない場合

この記事では、ExcelのVLOOKUP関数で日本語の文字列検索ができない場合の原因と対処法をご紹介します。

日本語の文字列を検索する際、エラーが表示されたり間違った結果が表示されたりすることがありますが、検索方法や文字列の表示を見直すことでエラーなどを解消することができます。

以下では、日本語の文字列を検索する際に起きやすい間違いなどをご紹介します。

ExcelのVLOOKUP関数で日本語の文字列検索ができない場合

以下では、日本語の文字列検索ができない場合の原因と対処法を3通りご紹介します。

検索方法で「TRUE」を選択している場合

文字列を検索する際に「TRUE」を選択しているとエラーや間違った値が返されることがあります。

検索値に紐づく値が違う

上記の画像は、昇順で並び替えているのに「検索値」神奈川県に紐づく横浜市ではなく「さいたま市」が返されています。

原因は、検索方法で「TRUE」を指定しているためです。検索方法を省略して「=VLOOKUP(D2,A2:B7,2)」と入力している場合も「TRUE」として検索されてしまいます。

今回は、検索値や検索範囲が数値ではなく文字列のため、検索方法で「FALSE」を選択して完全一致させる必要があります。

以下では、日本語の文字列検索する手順をご紹介します。

検索方法で「FALSE」を指定する

E2セルに「=VLOOKUP(D2,A2:B7,2,FALSE)」を入力して、Enterを押します。

正しい結果が表示された

検索方法で「FALSE」を指定することで正しい結果を表示することができました。

異体字などを使用していて値が一致しない場合

漢字には通常で使用される「常用漢字」のほかに、標準の字体とは異なりますが発音や意味が同じである「異体字」などがあり、氏名などを入力する際に混在していることがあります。

結果がエラーになっている

上記の画像は、F列に入力された値を検索値としてG列にVLOOKUP関数で取得した結果を表示しています。

氏名が一致しているように見えますが、検索値は「常用漢字」、範囲は「異体字」で入力されているため一致していないと判定されてしまいました。

以前使われていた画数が多く複雑な「旧字体」から簡易的な漢字に改めた「新字体」などもあるため、古いデータを扱う際は注意が必要です。

日本語の文字列をすべて入れ替えるのは手間と時間がかかるため、漢字の字体が異なっても、同じ発音をする漢字を検索する方法をご紹介します。

列を挿入する

それぞれの表の左端に1列挿入します。

A列の列番号を選択し、②Ctrlを押しながらF列の列番号を選択します。

この際、A列の前に挿入する列は検索値を探す列になるので必ず表の左端に列を挿入してください。

ホームタブ、④挿入の下矢印、⑤シートの列を挿入の順に選択します。

PHONETIC関数でフリガナを取得する

A2セルに「=PHONETIC(B2)」を入力してEnterを押します。

PHONETIC関数はセルに入力した文字列のフリガナを表示する関数です。書式は「=PHONETIC(参照)」です。

使い方などの詳細は以下の記事でご紹介しています。

ExcelのPHONETIC関数の使い方|ふりがなを別のセルに表示する

オートフィルする

A2セルのフィルハンドルをドラッグして数式をコピーします。

列幅を調整する

A2セルからA6セルにPHONETIC関数で取得した「氏名」のフリガナが表示されました。

フリガナが見切れているので、A列の列番号とB列の列番号の間にマウスオーバーして、左右を向く矢印に変形させます。ダブルクリックをして列幅を自動調整します。

PHONETIC関数でフリガナを取得する

G2セルに「=PHONETIC(H2)」を入力してEnterを押します。

オートフィルする

G2セルのフィルハンドルをドラッグして数式をコピーします。

列幅を調整する

G2セルからG6セルにPHONETIC関数で取得した「氏名」のフリガナが表示されました。

フリガナが見切れているので、G列の列番号とH列の列番号の間にマウスオーバーして、左右を向く矢印に変形させます。ダブルクリックをして列幅を自動調整します。

VLOOKUP関数を修正する

列を追加して参照範囲がずれてしまったので、VLOOKUP関数を修正します。

I2セルに「=VLOOKUP(G2,$A$2:$E$6,5,FALSE)」を入力してEnterを押します。

オートフィルする

I2セルのフィルハンドルをドラッグして数式をコピーします。

フリガナが違うのでエラーになっている

I2セルからI6セルに結果が表示されました。ただし、I5セルだけがエラーになっています。

フリガナを確認するとA5セルは「クロタ」、G5セルは「クロダ」になっているため値が一致していません。

フリガナは名前をセルに入力した際の読み方になってしまうため、正しいフリガナになっていない場合があります。

例えばセルに「東京」と入力した際、「トウキョウ」と入力すれば「トウキョウ」と表示され、「ヒガシケイ」と入力すれば「ヒガシケイ」と表示されるということです。

以下では、フリガナを編集していきます。

フリガナを表示する

フリガナを修正したいセルを選択します。

ホームタブ、③ふりがなの表示/非表示の下矢印、④ふりがなの表示の順に選択します。

カーソルを合わせてフリガナを編集する

フリガナを編集したいセルをダブルクリックします。

編集したいフリガナに矢印キーを使ってカーソルを合わせ、backspaceで間違ったフリガナを削除して正しいフリガナを入力します。

結果が表示された

I5セルに結果が表示されました。

フリガナを検索値にすることで、字体が異なる同じ発音の日本語の文字列検索ができるようになりました。

ただし、機種依存文字は異なる環境で表示した場合に文字化けをしてしまう可能性があるため、機種依存文字を使用しないことをおすすめします。

文字列の表示形式などが異なる場合

文字列は一致しているのにエラーになる

上記の画像のように、文字列が一致していても#N/Aエラーが表示されることがあります。

#N/Aエラーは検索値が存在しない場合に表示されるエラーです。数式が正しく入力されていて、かつ文字列も一致している場合は文字列の表示形式などが影響している可能性があります。

文字列の検索を完全一致させる方法は、以下の記事でご紹介しています。

ExcelのVLOOKUP関数で文字列はあるのにエラーになる