ExcelのVLOOKUP関数は、選択したルックアップ値に基づいてデータテーブルから情報を検索して返すために使用されます。
通常、VLOOKUPでは、ルックアップ値がデータテーブルの一番左の列になければなりません。この関数は、この値の右側の同じ行にある別のデータフィールドを返します。
ただし、VLOOKUPとCHOOSE関数を組み合わせることにより、左参照式を作成することができます。
- ルックアップ値をデータテーブルの任意の列から取得できるようにします。
- ルックアップ値の左側の任意の列にある情報を返します。
注意:これらの手順は、Excelバージョン2019,2016, 2013、2010、およびExcel for Office 365に適用されます。
05の01チュートリアル:左ルックアップ式でのVLOOKUP関数とCHOOSE関数の使用

サンプル画像に表示される左参照式を作成するには、次の式を使用します。
= VLOOKUP($ D $ 2、CHOOSE({1,2}、$ F:$ F、$ D:$ D)、2、FALSE)
この例では、データテーブルの第3列に記載されている異なる会社によって提供された部分を見つけることができます。
式のCHOOSE関数の仕事は、列3が列1であると信じるようにVLOOKUPを騙すことです。その結果、会社の名前をルックアップ値として使用して、各会社が提供する部品の名前を見つけることができます。
チュートリアルデータを入力
- 見出しを入力 サプライヤー 細胞に D1.
- 見出しを入力 部 セル内 E1.
- 上記の画像に表示されているデータの表をセルに入力する D4〜F9
- 行 2および3 このチュートリアルで作成された検索基準と左参照式に対応するために空白のままにします
VLOOKUPダイアログボックスを開く
数式をワークシートのセルF1に直接入力することは可能ですが、多くの人は数式の構文に問題があります。
この場合、VLOOKUPダイアログボックスを使用する方が安全です。ほとんどすべてのExcelの関数には、それぞれの関数の引数を別々の行に入力できるダイアログボックスがあります。
- セルをクリック E2 ワークシートのE2は、左参照式の結果が表示される場所です。
- クリックしてください 数式 リボンのタブ。
- クリックしてください 参照と参照 リボンのオプションを使用して、機能ドロップダウンリストを開きます。
- クリック VLOOKUP リスト内で関数のダイアログボックスを表示します。
VLOOKUPダイアログボックスへの引数の入力

関数の引数は、関数が結果を計算するために使用する値です。
関数のダイアログボックスでは、各引数の名前は別の行に続き、値を入力するフィールドが続きます。
添付の図に示すように、ダイアログボックスの正しい行に、VLOOKUPの引数ごとに以下の値を入力します。
ルックアップ値
ルックアップ値は、テーブル配列を検索するために使用される情報フィールドです。 VLOOKUPは、ルックアップ値と同じ行から別のフィールドのデータを返します。
この例では、会社名がワークシートに入力される場所へのセル参照を使用します。この利点は、数式を編集せずに会社名を簡単に変更できることです。
- クリックしてください 参照値 ダイアログボックスの行をクリックします。
- セルをクリック D2 このセル参照を 参照値 ライン。
- プレス F4 キーボードのキーを押してセル参照を絶対的にする - $ D $ 2。
絶対セル参照
ルックアップ式がワークシートの他のセルにコピーされると、エラーを防ぐためにルックアップ値とテーブル配列の引数に絶対セル参照が使用されます。
CHOOSE関数の入力
table array引数は、特定の情報が取得される連続したデータのブロックです。
通常、VLOOKUPはルックアップ値の引数の右側を調べて、テーブル配列内のデータを検索します。左に見えるようにするには、CHOOSE関数を使用してテーブル配列の列を並べ替えて、VLOOKUPを欺く必要があります。
この式では、CHOOSE関数は2つのタスクを実行します。
- これは、2列幅(列Dと列F)のテーブル配列を作成します。
- これは、列Fが最初に、列Dが2番目になるように、表配列の列の右から左への順序を変更します。
関数の入力
関数を手動で入力するときは、関数の各引数をカンマで区切る必要があります。
- VLOOKUP関数ダイアログボックスで、 テーブル・アレイ ライン。
- 次のように入力します 選択する 関数:CHOOSE({1,2}、$ F:$ F、$ D:$ D)
列インデックス番号
通常、列インデックス番号は、テーブル配列のどの列に、後にあるデータが含まれているかを示します。ただし、この式では、CHOOSE関数によって設定された列の順序を参照します。
CHOOSE関数は、列Fと最初に列Dが続く2列幅の表配列を作成します。探索される情報は列Dにあるため、列索引引数の値は2に設定する必要があります。
- クリックしてください Col_index_num ダイアログボックスの行をクリックします。
- タイプa 2 この行に
レンジルックアップ
VLOOKUPのRange_lookup引数は、VLOOKUPがルックアップ値と正確に一致するかおよその一致を見つけるかを示す論理値(TRUEまたはFALSEのみ)です。
- TRUEの場合、またはこの引数を省略すると、VLOOKUPはLookup_valueと完全に一致するか、完全一致が見つからない場合はVLOOKUPが次に大きい値を返します。これを行う数式のために、Table_arrayの最初の列のデータを昇順でソートする必要があります。
- FALSEの場合、VLOOKUPはLookup_valueと完全一致を使用します。ルックアップ値と一致するTable_arrayの最初の列に2つ以上の値がある場合、最初に見つかった値が使用されます。完全一致が見つからない場合は、#N / Aエラーが返されます。
このチュートリアルでは、特定の部品名を探しているので、Range_lookupは次のように設定されています。 偽 この式によって完全一致のみが返されるようにします。
- クリックしてください Range_lookup ダイアログボックスの行をクリックします。
- 単語を入力 偽 この行では、VLOOKUPが、探しているデータと完全に一致するようにしたいことを示します。
- クリック OK 左の検索式を完了し、ダイアログボックスを閉じます。
- セルD2に会社名をまだ入力していないため、セルE2に#N / Aエラーが表示されます。
左参照式によるデータの返却

どの会社がどの部品を供給しているかを調べるには、会社の名前をセルに入力します D2 を押して 入る キーを押します。
部品名はセルE2に表示されます。
- セルをクリック D2 あなたのワークシートに。
- タイプ ガジェットプラス 細胞に D2 を押して 入る キーを押します。
- 「Gadgets Plus」というテキストが、セルE2に表示されます。
セルD2に他の会社名を入力してルックアップ式をさらにテストすると、対応する部品名がセルE2に表示されます。
#N / AなどのエラーメッセージがセルE2に表示される場合は、セルD2のスペルミスをチェックします。
04/052列テーブル配列の作成
CHOOSE関数の構文は次のとおりです。
= CHOOSE(Index_number、Value1、Value2、… Value254)
CHOOSE関数は、通常、入力されたインデックス番号に基づいて値のリスト(Value1〜Value254)から1つの値を返します。
インデックス番号が1の場合、関数はリストからValue1を返します。インデックス番号が2の場合、関数はValue2をリストから返します。
複数のインデックス番号を入力すると、目的の順序で複数の値が返されます。 CHOOSEを複数の値に戻すには、配列を作成します。
配列を入力するには、入力した数字を中括弧または角括弧で囲みます。インデックス番号には2つの番号が入力されます。{ 1,2 }.
CHOOSEは2列のテーブルの作成に限定されないことに注意してください。 {1,2,3}などの配列に追加の数値とvalue引数の範囲を追加することで、CHOOSEは3列のテーブルを作成します。
追加の列を使用すると、VLOOKUPの列インデックス番号引数を目的の情報を含む列の番号に変更することにより、左参照式で異なる情報を返すことができます。
05/05CHOOSE関数による列の順序の変更
この式で使用されるCHOOSE関数では、次のようになります。
CHOOSE({1,2}、$ F:$ F、$ D:$ D)
列Fの範囲は列Dの前にリストされます。
CHOOSE関数はVLOOKUPのテーブル配列(その関数のデータソース)を設定するので、CHOOSE関数の列の順序はVLOOKUPに渡されます。
VLOOKUPに関する限り、テーブル配列の幅は2列で、列Fは左側に、列Dは右側にあります。列Fには検索する会社の名前が含まれており、列Dには部分名が含まれているため、VLOOKUPはルックアップ値の左側にあるデータを検索する際に定期的な検索を実行できます。
結果として、VLOOKUPは会社名を使用して提供する部分を見つけることができます。




