Share via


WorksheetFunction.VLookup(Object, Object, Object, Object) メソッド

定義

指定された範囲の 1 列目で特定の値を検索し、その範囲内の別の列の同じ行にある値を返します。

public object VLookup (object Arg1, object Arg2, object Arg3, object Arg4);
Public Function VLookup (Arg1 As Object, Arg2 As Object, Arg3 As Object, Optional Arg4 As Object) As Object

パラメーター

Arg1
Object

検索値: 範囲の左端の列で検索する値を指定します。 検索値には、値またはセル参照を指定します。 検索値が範囲の左端の列の最小値より小さい場合、エラー値 #N/A が返されます。

Arg2
Object

範囲: 2 列以上のデータ列です。 セル範囲の参照、またはセル範囲名を指定します。 範囲の左端の列の値が、検索値で検索される値です。 これらの値は、文字列、数値、論理値のいずれかであることが必要です。 英字の大文字と小文字は区別されません。

Arg3
Object

列番号: 範囲内で目的のデータが入力されている列を、左端からの列数で指定します。 列番号に 1 を指定すると、範囲の左端の列の値が返され、列番号に 2 を指定すると、範囲の左から 2 列目の値が返されます。

Arg4
Object

Range_lookup - メソッドで完全一致と近似一致のどちらを検索するかを VLookup(Object, Object, Object, Object) 指定する論理値。

戻り値

注釈

VLookup メソッドの "V" は、縦方向 (vertical) の検索を意味します。 比較値が検索するデータの左側のHLookup(Object, Object, Object, Object)列にある場合は、メソッドの代わりに VLookup メソッドを使用します。

Col_index_num が 1 未満の場合、VLookup メソッドはエラーを生成します。

Col_index_num が table_array の列数より大きい場合、VLookup メソッドはエラーを生成します。

Range_lookupが true または省略された場合は、完全一致または近似一致が返されます。 完全一致が見つからない場合は、lookup_value未満の次の最大値が返されます。

table_arrayの最初の列の値は昇順で並べ替える必要があります。それ以外の場合、 VLookup メソッドは正しい値を与えない可能性があります。

Range_lookupが false の場合、 VLookup メソッドは完全一致のみを検出します。 この場合、table_array の最初の列の値を並べ替える必要はありません。 lookup_value と一致する値が table_array の最初の列に複数ある場合は、最初に検索された値が使用されます。 完全に一致する値が見つからない場合は、エラーが生成されます。。

table_arrayの最初の列でテキスト値を検索する場合は、table_arrayの最初の列のデータに、先頭のスペース、末尾のスペース、直線 ( ' または " ) とカーリー ( ' または ") 引用符の一貫性のない使用、または印刷されていない文字が含まれていないことを確認します。 このような場合、 VLookup メソッドは正しくない値または予期しない値を与える可能性があります。 値をクリーンまたはトリミングする方法については、 メソッドと Trim(String) メソッドをClean(String)参照してください。 数値や日付型の値を検索する場合は、table_array の最初の列にあるデータがテキスト値として保存されていないことを確認してください。 これらのデータがテキスト値として保存されていると、VLookup によって正しくない値や予期しない値が返されます。

range_lookupが false で、lookup_valueがテキストの場合は、lookup_valueでワイルドカード文字、疑問符 (?)、アスタリスク (*) を使用できます。 ワイルドカード文字の疑問符は任意の 1 文字を表し、アスタリスクは任意の文字列を表します。 If you want to find an actual question mark or asterisk, type a tilde (~) preceding the character.

適用対象