【用語集に記載の内容について】

用語集に記載されているメソッドや関数の引数は、VBAエキスパート試験の試験範囲に基づいており、すべての引数を網羅しておりません。 また、書式は公式テキストの記載に準じています。
試験範囲外の引数や詳細については、ヘルプ機能やオブジェクトブラウザーをご参照ください。

【コードをコピーして実行する場合の注意】

文字コードの関係上、半角の「¥」は「/」で表示されるため、当サイトでは全角の「¥」で記載しています。当サイトのコードをコピーして実行する場合は、全角の「¥」を半角の「¥」に変換してください。

VLOOKUP関数(ワークシート関数)

名称VLOOKUP関数(ワークシート関数)
説明
VLOOKUP関数は、指定したセル範囲の左端列で検索を行い、検索値と一致する行の指定した列の値を返すワークシート関数です。

** 注意 **
VLOOKUP関数は、値の検索を指定したセル範囲の左端列で行うため、値を検索する列がセル範囲の左端にあり、データを返す列が2列目以降に存在する必要があります。

【比較】
値を検索する列が、データを返す列より右にある場合は、MATCH関数とINDEX関数を組み合わせて値を取得します。
書式
WorksheetFunction.Vlookup(検索値, 範囲, 列番号, 検索の型)

検索値:検索する値を指定
範囲:検索するセル範囲を指定
列番号:検索するセル範囲で値を返す列の番号を指定
検索の型[省略可能]:TRUE(近似一致)またはFALSE(完全一致)を指定

範囲に指定したセル範囲の左端列で、検索値を検索します。
列番号には、範囲に指定したセル範囲の左端列を1とした列番号を指定します。
検索の型を省略した場合は、TRUE(近似一致)となります。
コード例①
【検索値に一致するデータを取得】
Sub Macro1()
    Dim num As Long
    
    num = WorksheetFunction.VLookup("orange", Range("A1:B4"), 2, False)
    MsgBox "orangeの値:" & num
End Sub

VLOOKUP関数で、アクティブシートのセル範囲A1:B4の左端列(セル範囲A1:A4)で「orange」を検索し、検索値が見つかった行の2列目(セル範囲B1:B4)の値を取得して、メッセージボックスに表示します。

マクロを実行すると、アクティブシートのセルの値が以下の場合、「orangeの値:40」のメッセージボックスが表示されます。
A B
1 apple 10
2 peach 20
3 banana 30
4 orange 40
カテゴリスタンダード