VLOOKUPが動作しない(8つの理由と解決策)。

  • これを共有
Hugh West

ブイルック は最も一般的で便利な機能の一つですが、広く使われているため、多くの人が「動作しない」という不満を持っています。 ブイルック 正しく表示されなかったりすることがあります。 ブイルック にはいくつかの制限がありますが、ほとんどの場合、構文を正しく理解していないか、慎重に使用しなかったためにエラーが発生します。 この記事では、なぜ ブイルック が動作しない。

わかりやすいように、ある果物屋さんの商品情報を表すデータセットを使って説明します。 データセットには5つのカラムがあります。 果実 , オーダーID、数量(Kg)、価格。 ご注文日 .

練習用としてダウンロード

ワークブックは下記のリンクからご自由にダウンロードしてください。

Excel.xlsxでVLOOKUPが動作しない。

VLOOKUPが動作しない8つの理由

1.VLOOKUPが動作せず、N/Aエラーが表示される。

の理由を紹介します。 #該当なし での作業中に発生します。 VLOOKUP関数 を避けるための最良の解決策を提案します。 #該当なし のエラーが発生しました。

1.1. 先頭と後尾のスペース

大きなデータシートでは、余分なスペースが入る可能性はよくあることです。 また、データセットをじっくり見ないとエラーが出ないので、特定するのは難しいです。

ここでは ブイルック の計算式が正しく表示されます。

まず、結果値を配置するセルを選択します。

➤ セルを選択しました。 I4

次に、次の数式を フォーミュラ・バー .

=VLOOKUP(H4,B4:F12,2)

ここでは、その中で ブイルック 関数で、セルを選択しました。 H4 かわりに ルックアップバリュー を選択し、範囲を B4:F12 かわりに table_array を知りたいので。 オーダーID そうとう 2 かわりに col_index_num .

を押してください。 エンタメ キーを取得するはずでした。 オーダーID ルックアップ の値が表示されます。 #該当なし .

さて、データセットを見た後、あなたは ルックアップバリュー アップル にはリーディングスペースがあるため ブイルック が動作しない。

解決策:

余分な先頭や末尾のスペースを削除するには ルックアップバリュー を論じる TRIM機能 の中で ブイルック 関数を使用します。

を使う方法を紹介しましょう。 トリム 関数の中で ブイルック 関数を使用します。

を避けるためです。 ブイルック error 選択したセルに次の数式を入力します。

=vlookup(trim(h4),b4:f12,2)

ここでは トリム 関数は、選択されたセルの既存のすべての先頭および末尾のスペースを削除します。 H4 .

1.2.タイポミスでVLOOKUPが動作しない場合

の入力ミス ルックアップバリュー が働かないもう一つの理由 ブイルック .

ここで、選択したセルに数式を正しく挿入したことがわかります。

=VLOOKUP(H4,B4:F12,2)

を押してください。 エンタメ キーが表示されるのではなく オーダーID を表示します。 #該当なし のエラーが発生しました。

では、見てみましょう。 ルックアップバリュー のスペルが違うことがわかると思います。 アップル が正しくないのは、そのためです。 ブイルック が動作しない。

解決策:

必ず丁寧に打ち込んでください。 ルックアップバリュー データテーブルの値の正確なスペルを維持する必要があります。

を打ち込むと ルックアップバリュー 表の通りなので ブイルック が機能している。

1.3. 数値がテキストとしてフォーマットされている場合

で数値がテキストとしてフォーマットされている場合、その数値は table_array を表示します。 #該当なし を使用中にエラーが発生しました。 ブイルック 関数を使用します。

を手に入れようと思います。 価格 を使うことで オーダーID かわりに ルックアップバリュー .

まず、結果値を配置するセルを選択します。

➤ セルを選択しました。 I4

次に、次の数式を フォーミュラ・バー .

=VLOOKUP(H4,C4:F12,3)

を押してください。 エンタメ キーが表示されます。 #該当なし の代わりにエラー 価格 .

さて、ここまできたら オーダーID の欄には、数字が表示されます。 1001 がテキストとしてフォーマットされていることが、動作しない理由です。 ブイルック .

解決策:

このようなエラーを回避するために、数値のフォーマットを必ず確認します。 ここでは、数値のフォーマットをnumberに修正したので ブイルック が機能している。

続きを読む VLOOKUP Excelの1つのセルから部分的なテキストを取得する

1.4. ルックアップ値が左端の列でない場合

があります。 ブイルック 関数はシーケンスを保持します。 ルックアップバリュー でなければならない。 最左列 そうでない場合は、動作しません。

を手に入れようと思います。 価格 を使うことで オーダーID かわりに ルックアップバリュー .

そこで、次のような計算式にしました。

=VLOOKUP(H4,B4:F12,3)

しかし、ここでは オーダーID の左端のカラムでない場合、そのカラムは table_array B4:F12 と表示されるわけです。 #該当なし のエラーが発生しました。

解決策:

ここでは、2つの方法でエラーを回避することができます。

⏩ 1つは、変更することができます。 table_array ここで ルックアップバリュー は一番左の列となります。

⏩ 2つ目は、「配置」です。 ルックアップバリュー の列を、データセットテーブルの一番左の位置に配置する。

続きを読む Excelで2つのルックアップ値を持つVLOOKUP(2つのアプローチ)

1.5. 特大のテーブルまたは新しい行と値を持つ列の挿入

データセットに新しいデータを挿入しても、そのデータを変更するのを忘れてしまうことがあります。 table_array であれば ブイルック は正常に動作しないことがあります。

を手に入れようと思います。 オーダーID を使うことで 果実 かわりに ルックアップバリュー .

そこで、次のような計算式にしました。

=vlookup(h4,b4:f12,2,false)

ここで、私が使ったのは せいごう の情報を挿入し、誤解を招かないようにしました。 リチ を更新していないため、エラーが発生しました。 table_array .

解決策:

データセットテーブルに新しいデータを挿入するときは、必ず テーブルアレイ もあります。

⏩ ここで、更新しました。 table_array を式で表す。

=VLOOKUP(H4,B4:F14,2,FALSE)

⏩ もう一つの方法は、データセットをテーブルに変換することです。

まず、セル範囲を選択します。

次に、以下を開きます。 インサート >> 選択 テーブル

A ダイアログボックス がポップアップ表示されます。

をクリックします。 よっしゃー .

データセットがテーブルになったので、テーブル名を使うだけでよい。

続きを読む VLOOKUPでマッチがあるのになぜN/Aを返すのか?

2.VLOOKUPが動作せず、VALUEエラーが表示される。

このセクションからは、なぜ #VALUEエラー での作業中に発生します。 ブイルック また、そのような事態を避けるための万全の対策を提案します。 #バリュー のエラーが発生しました。

2.1. 列インデックス番号が1未満の場合

間違って使用した場合 col_index_num 未満 1 を取得します。 #バリュー のエラーが発生しました。

万が一、これを手に入れたら #バリュー をご確認ください。 col_index_num の議論になります。

続きを読む エクセルで数字を使ったVLOOKUP(4例)

2.2.255文字以上の使用について

を超える長いテキストを値として持っているとします。 255 文字になります。 #バリュー のエラーが発生しました。

ここでは、その中で A7 を超える値を挿入しました。 255 の文字が表示されます。

そして、次の式を使用します。

=VLOOKUP(G4,A4:E12,2)

さて、その結果、表示されているのは #バリュー のエラーが発生しました。

解決策:

このエラーを回避するためには、文字を小さくするか、あるいは INDEX MATCH関数 代わりに ブイルック .

ここで、私が使ったのは MATCH とのことです。 INDEX 関数を使用します。

=index($b$4:$b$12,match(true,index($a$4:$a$12=g4),0))である。

ここでは、その中で INDEX 関数は、セル範囲の絶対参照を選択した B$4:$B$12 を返したいところから。

での MATCH 関数、与えられた かわりに ルックアップバリュー を使用し、別の index($a$4:$a$12=g4,0)です。 として機能します。 ルックアップ_アレイ というわけで 0 かわりに マッチタイプ を使用する。 完全一致 .

を押してください。 エンタメ キーを押すと、その結果が表示されます。 ルックアップバリュー 以上 255 の文字が表示されます。

続きを読む INDEX MATCHとVLOOKUP関数の比較 (9例)

類似の読み物

  • ExcelのLOOKUPとVLOOKUP:3つの例付き
  • ExcelでVLOOKUPの大文字小文字を区別する方法(4つの方法)
  • Excel VLOOKUPで列の最後の値を検索する(代替案あり)
  • Excelでワイルドカードを使ったVLOOKUPを行う方法(2通り)
  • Excel VLOOKUPで複数の値を縦に並べて返す

3.VLOOKUPが動作せず、REFエラーが表示される。

ここでは、その理由を知ることができます。 #REFエラー での作業中に発生します。 ブイルック を避けるための解決策を得ることができます。 #レフ のエラーが発生しました。

3.1. テーブルより大きい列インデックス番号の使用

を使用する場合 col_index_num のカラム数よりも大きくなります。 table_array とすると、次のようになります。 #レフ のエラーが発生しました。

ここで、私は 6 かわりに col_index_number が、その table_array 持つ 5 カラムの合計で、そのため ブイルック 関数が動作せず、表示されています。 #レフ のエラーが発生しました。

解決策:

を避けるため #レフ のエラーがチェックされます。 col_index_num にある番号を使用します。 table_array .

続きを読む Excelで複数の列を返すVLOOKUP(4例)

4.VLOOKUP NAMEエラー

の理由をお教えしましょう。 #NAMEエラー が発生し、それを除去する方法について説明します。

4.1. 関数名のスペルミスのため VLOOKUP が動作しない。

があります。 #ネーム 機能名のスペルミスでエラーが発生する。

解決策:

を避けるため #ネーム は、常にExcelの組み込み関数から適切な関数名を使用します。

5.近似一致の利用

を使用する場合 近似一致(TRUE) になる可能性があります。 #該当なし エラーまたは 不正解 の結果です。

を手に入れようと思います。 オーダーID を使うことで 果実 かわりに ルックアップバリュー .

そこで、次のような計算式にしました。

=vlookup(h4,b4:f12,2,true)

しかし、ここで、私は リチ かわりに ルックアップバリュー と使用されました。 かわりに レンジルック . ブイルック ショー 1007 かわりに オーダーID というのは不正解です。 1007 オーダーID チェリー .

近似一致を使用したため、エラーが表示されるのではなく、間違った情報が表示されます。

解決策:

を使用します。 ルックアップバリュー を使用する代わりに、慎重に 近似一致 を使用することができます。 せいごう 誤解を招くような情報よりも、エラーが出るほうがよっぽどいいと思うんですけどね。

で式を包むことができます。 IFERROR関数 のように、範囲内の値が見つからない場合はエラーメッセージを表示します。

6.テーブルリファレンスは相対的である

もし、あなたが テーブルアレイ が相対的に参照されている場合、エラー通知や、数式を ルックアップ その他の値です。

解決策:

このエラーを回避するためには、絶対参照を使用します。

を押してください。 F4 キーを押しながら参照先を選択すると、その参照先が変換されます。 相対参照 まで 絶対参照 .

ここでは、以下の計算式を使っています。

=vlookup(i4,c4:$f$12,2)

7. VLOOKUPが動作しない 新規カラム挿入用

既存のデータセットに新しいカラムを挿入した場合、そのカラムは ブイルック 関数は動作しません。 col_index-num のレコードに関する情報を返すために使用されます。 ブイルック 機能です。 col_index-num は耐久性がないため、新しいものを挿入すると ブイルック は動作しません。

ここでは ブイルック 機能が正常に動作していることを確認します。

しかし、ここでは新しいカラムを1つ挿入したので、それが表示されているのです。 0 を表示するのではなく、期待した結果を表示します。

解決策:

このような問題を避けるために、ワークシートを保護し、誰もが新しい列を挿入できないようにすることができますが、それは十分に親切ではありません。

⏩ もうひとつの解決策は、あなたが MATCH 関数の中で ブイルック 関数を使用します。

そこで、次のような数式を入力します。

=vlookup(i4,b4:g12,match(j3,b3:g3,0),false)

ここでは VLOOKUP関数 を選択しました。 I4 かわりに ルックアップバリュー を選択した後、範囲 B4:G12 かわりに table_array として、その col_index_num を使用しました。 MATCH 関数も使用されます。 FALSE かわりに レンジルック 得るために 完全一致 .

での MATCH 関数では、カラム名 J3 かわりに ルックアップバリュー 次に、列名の範囲を選択しました。 B3:G3 かわりに ルックアップ_アレイ 一挙に 0 かわりに マッチタイプ を使用する。 完全一致 .

を押してください。 エンタメ このように、期待通りの結果を得ることができます。

8.ルックアップ値が重複している。

をお持ちの場合 ルックアップバリュー が重複している場合は ブイルック は、利用可能なすべての値に対して機能するわけではありません。

ブイルック は、探した値にマッチする最初の値だけを返します。

解決策:

このような問題を回避するためには、重複を削除するか、あるいは ピボットテーブル .

⏩ 重複を削除する場合は、以下の方法で行います。 複製を削除する をクリックし、リボンをクリックします。

⏩ また、このような場合は ピボットテーブル .

使用するには

まず、セル範囲を選択します

次に インサート タブ>> 選択 ピボットテーブル

A ダイアログボックス がポップアップ表示されますので、場所を選択し よっしゃー .

これで、選択できるようになりました。 果実 オーダーID において を表示すると、既存の オーダーID 選択した フルーツ .

続きを読む VLOOKUPを使用してExcelで重複する値を検索する方法

プラクティス部門

これらの説明された方法を練習するために、ワークブックに練習シートを用意しました。

結論

のあらゆるタイプのシナリオを網羅することを心がけました。 ブイルック このようなさまざまな方法を用いることで、エラーを回避しながら作業を進めることができます。 ブイルック 最後になりましたが、ご意見、ご感想がございましたら、下記までお寄せください。

Hugh West は、業界で 10 年以上の経験を持つ、非常に経験豊富な Excel トレーナー兼アナリストです。彼は会計と財務の学士号と経営管理の修士号を取得しています。ヒューは教えることに情熱を持っており、理解しやすい独自の教育アプローチを開発しました。彼の Excel に関する専門知識は、世界中の何千人もの学生や専門家がスキルを向上させ、キャリアで優れた成果を上げるのに役立ってきました。 Hugh はブログを通じて知識を世界に共有し、個人や企業が潜在能力を最大限に発揮できるよう無料の Excel チュートリアルとオンライン トレーニングを提供しています。