WorksheetFunction.Lookup メソッド (Excel)
1 行または 1 列のみのセル範囲、または配列に含まれる値を返します。 Lookup 関数には、ベクター フォームと配列フォームという 2 つの構文形式があります。
構文
式。Lookup (Arg1、 Arg2、 Arg3)
式: WorksheetFunction オブジェクトを表す変数。
パラメーター
名前 | 必須 / オプション | データ型 | 説明 |
---|---|---|---|
Arg1 | 必須 | バリアント型 | Lookup_value - ルックアップ が最初のベクトルで検索する値。 検査値には、数値、文字列、論理値、または値を参照する名前やセル参照を指定することができます。 |
Arg2 | 必須 | バリアント型 | Lookup_vectorまたは配列 - ベクター形式で、1 つの行または 1 つの列のみを含む範囲。 検査範囲には、文字列、数値、または論理値を指定できます。 配列形式では、検査値と比較する文字列、数値、または論理値を含むセル範囲を指定します。 |
Arg3 | 省略可能 | バリアント型 | Result_vector - ベクター形式でのみ使用されます。 1 行または 1 列のみの範囲を指定します。 対応範囲は検査範囲と同じサイズあることが必要です。 |
戻り値
Variant
注釈
目的 | 詳細については、 | 使用方法 |
---|---|---|
1 行または 1 列のみのセル範囲 (ベクトル) を検査範囲として検査値を検索し、検査値が見つかると、セル範囲の次の行または列の同じ位置にある値を返す | ベクトル形式 | ベクトル形式の LOOKUP 関数を使用するのは、検索する値のリストが大きい場合や、値が経時変化する場合です。 |
配列の先頭行または先頭列で、指定された値を検索し、検査値が見つかると、配列の最終行または最終列の同じ位置の値を返す | 配列形式 | 配列形式の LOOKUP 関数を使用するのは、検索する値のリストが小さい場合や、値が経時変化しない場合です。 |
ベクトル形
ベクトルとは、1 行または 1 列で構成されるセル範囲のことです。 Lookup のベクター形式は、1 行または 1 列の範囲 (ベクトルと呼ばれます) で値を検索し、2 番目の 1 行または 1 列の範囲の同じ位置から値を返します。 照合する値を含む範囲を指定する場合は、この形式の Lookup 関数を使用します。 もう 1 つの 形式のルックアップ では、最初の列または行が自動的に検索されます。
重要
lookup_vectorの値は、...,-2、-1、0、1、2、...、A-Z、FALSE、TRUE の昇順に配置する必要があります。それ以外の場合、 Lookup は正しい値を与えない可能性があります。 英字の大文字と小文字は区別されません。
Lookup でlookup_valueが見つからない場合は、lookup_value以下のlookup_vectorの最大値と一致します。
lookup_valueがlookup_vectorの最小値よりも小さい場合、 Lookup は#N/A エラー値を返します。
配列フォーム
Lookup の配列形式は、指定した値の配列の最初の行または列を検索し、配列の最後の行または列の同じ位置から値を返します。 照合する値が配列の最初の行または列にある場合は、この形式の Lookup を使用します。 列または行の場所を指定する場合は、もう 1 つの 形式のルックアップ を使用します。
ヒント
一般に、Lookup の配列形式の代わりに HLookup 関数または VLookup 関数を使用することをお勧 めします。 この形式の ルックアップ は、他のスプレッドシート プログラムとの互換性のために提供されます。
Lookup でlookup_valueが見つからない場合は、lookup_value以下の配列の最大値が使用されます。
lookup_valueが(配列の次元に応じて) 最初の行または列の最小値よりも小さい場合、 Lookup は#N/A エラー値を返します。
Lookup の配列形式は、HLookup 関数と VLookup 関数によく似ています。 違いは、 HLookup は最初の行でlookup_valueを検索し、 VLookup は最初の列で検索し、 ルックアップ は配列の次元に従って検索します。
配列が高さ (行より多い列) より広い領域をカバーしている場合、 Lookup は最初の行でlookup_valueを検索します。
配列が正方形の場合、または幅よりも高い場合 (列より多くの行)、 ルックアップ は最初の列で検索します。
HLookup と VLookup を使用すると、インデックスを下または全体に配置できますが、ルックアップでは常に行または列の最後の値が選択されます。
重要
配列内の値は、...,-2、-1、0、1、2、...、A-Z、FALSE、TRUE の昇順に配置する必要があります。それ以外の場合、 Lookup は正しい値を与えない可能性があります。 英字の大文字と小文字は区別されません。
注:
また、 ルックアップ 関数は、7 つ以上の条件に対する詳細なテストまたはテストの IF 関数の代わりに使用することもできます。 「配列形式」の使用例を参照してください。
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。