WorksheetFunction.Lookup メソッド (Excel)

1 行または 1 列のみのセル範囲、または配列に含まれる値を返します。 Lookup 関数には、ベクトル形式と配列形式の 2 つの構文形式があります。

構文

検索 (arg1, arg2, arg3)

: WorksheetFunction オブジェクトを表す変数。

パラメーター

名前 必須 / オプション データ型 説明
Arg1 必須 バリアント型 Lookup_value - Lookup が最初のベクトルで検索する値。 検査値には、数値、文字列、論理値、または値を参照する名前やセル参照を指定することができます。
Arg2 必須 バリアント型 Lookup_vector または配列 - ベクトル形式で、1 行または 1 列のみを含む範囲。 検査範囲には、文字列、数値、または論理値を指定できます。 配列形式では、検査値と比較する文字列、数値、または論理値を含むセル範囲を指定します。
Arg3 省略可能 バリアント型 (Variant) Result_vector - ベクター形式でのみ使用されます。 1 行または 1 列のみの範囲を指定します。 対応範囲は検査範囲と同じサイズあることが必要です。

戻り値

Variant

注釈

目的 詳細については、 使用方法
1 行または 1 列のみのセル範囲 (ベクトル) を検査範囲として検査値を検索し、検査値が見つかると、セル範囲の次の行または列の同じ位置にある値を返す ベクトル形式 ベクトル形式の LOOKUP 関数を使用するのは、検索する値のリストが大きい場合や、値が経時変化する場合です。
配列の先頭行または先頭列で、指定された値を検索し、検査値が見つかると、配列の最終行または最終列の同じ位置の値を返す 配列形式 配列形式の LOOKUP 関数を使用するのは、検索する値のリストが小さい場合や、値が経時変化しない場合です。

ベクトル形

ベクトルとは、1 行または 1 列で構成されるセル範囲のことです。 ベクトル形式の ルックアップ では、1 行または 1 列の範囲 (ベクトルと呼ばれる) で値を検索し、2 番目の 1 行または 1 列の範囲の同じ位置から値を返します。 この形式の ルックアップ 関数は、一致させる値を含む範囲を指定する場合に使用します。 他の形式の ルックアップ では、最初の列または行が自動的に検索されます。

重要

lookup_vector の値は昇順で配置する必要があります: ...,-2, -1, 0, 1, 2, ..., A-Z, FALSE, TRUE;これらを行わないと、 Lookup で 正しい値が得られないことがあります。 英字の大文字と小文字は区別されません。

Lookup でlookup_valueが見つからない場合は、lookup_value 以下の lookup_vector 内の最大値に一致します。

lookup_value が lookup_vector の最小値よりも小さい場合、 ルックアップでは #N/A エラー値が提供されます。

配列フォーム

ルックアップの配列形式では、配列の最初の行または列で指定された値を検索し、配列の最後の行または列の同じ位置から値を返します。 一致させる値が配列の最初の行または列にある場合は、この形式の ルックアップ を使用します。 列または行の場所を指定する場合は、別の形式の ルックアップ を使用します。

ヒント

一般に、Lookup の配列形式ではなく、HLookup または VLookup 関数を使用することをお勧めします。 この形式の ルックアップ は、他のスプレッドシート プログラムとの互換性のために用意されています。

  • Lookup でlookup_valueが見つからない場合は、配列内で lookup_value 以下の最大の値が使用されます。

  • lookup_value が 1 行目または 1 列目の最小値よりも小さい場合 (配列のサイズに応じて)、 ルックアップ は #N/A エラー値を返します。

検索の配列形式は、HLookup 関数および VLookup 関数とよく似ています。 違いは、 HLookup は 1 行目で lookup_value を検索し、 VLookup は最初の列で検索し、 Lookup は配列の次元に従って検索することです。

  • 配列がカバーしている領域が高さよりも広い場合 (行よりも列が多い場合)、 ルックアップ は最初の行でlookup_valueを検索します。

  • 配列が正方形であるか、配列が幅よりも高い (列よりも行が多い) 場合、 ルックアップ は最初の列を検索します。

  • HLookupVLookup では、インデックスを下または横断することができますが、ルックアップは常に行または列の最後の値を選択します。

重要

配列の値は昇順で配置する必要があります: ...、-2、-1、0、1、2、...、A-Z、FALSE、TRUE;これらを行わないと、 Lookup で 正しい値が得られないことがあります。 英字の大文字と小文字は区別されません。

注:

また、ル ックアップ 関数を IF 関数の代わりに使用して、精巧な精密なテストや 7 つ以上の条件のテストを行うこともできます。 「配列形式」の使用例を参照してください。

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。