【エクセルマクロ】VLOOKUP関数でセル値取得:使用例5選

VBA-vlookup関数使用-アイキャッチ エクセルマクロで効率化する

エクセルマクロで、VLOOKUP関数でセル値を取得するExcelVBAコードを記載しています。

VLOOKUP関数でセル値取得

以下のマクロを実行すると、vlookup関数で値を転記します。


Sub Vlookup関数で値取得()

Dim Target As String

    '「名前」を取得
    Target = Range("D2").Value

    With ActiveSheet
        Range("E2") = Application.WorksheetFunction. _
            Vlookup(Target, Range("A1:B6"), 2, False)
    End With
    
End Sub
マクロ実行後

VLOOKUP関数で、セルE2に値を転記します。

[Target = Range(“D2”).Value] で、検索値を変数に格納します。


 

VLOOKUP関数でセル値取得(複数セル転記)

以下のマクロを実行すると、vlookup関数で値を転記します。


Sub Vlookup関数で値取得()

Dim Target As String
Dim i As Long
Dim MyArea As Range

    Set MyArea = Range(Cells(2, 1), Cells(6, 2))

    '2~最終行までループ
    For i = 2 To 6

        '「名前」を取得
        Target = Cells(i, 4)

        With ActiveSheet
            Cells(i, 5) = Application.WorksheetFunction. _
                Vlookup(Target, MyArea, 2, False)
        End With
    Next i

End Sub
マクロ実行後

VLOOKUP関数で、複数セルに値を転記します。

[Set MyArea] に、セル範囲を格納して参照します。


 

VLOOKUP関数でセル値取得(別シート参照)

以下のマクロを実行すると、vlookup関数で値を転記します。


Sub Vlookup関数で値取得()

Dim Target As String
Dim Sht1 As Worksheet
Dim Sht2 As Worksheet

    Set Sht1 = Sheets("Sheet1")
    Set Sht2 = Sheets("Sheet2")

    '「名前」を取得
    Target = Sht2.Range("A2").Value

    With ActiveSheet
        Sht2.Range("B2") = Application.WorksheetFunction. _
            Vlookup(Target, Sht1.Columns("A:B"), 2, False)
    End With

End Sub

マクロ実行後

VLOOKUP関数で、別シートに値を転記します。

シート名を変数にしてVLOOKUPを実行します。

[Sht1.Columns(“A:B”)] で、列全体を参照範囲に設定します。


 

VLOOKUP関数でセル値取得(別シート参照・複数セル転記)

以下のマクロを実行すると、vlookup関数で値を転記します。


Sub Vlookup関数で値取得()

Dim i As Long
Dim Target As String
Dim Sht1 As Worksheet
Dim Sht2 As Worksheet
Dim MyArea As Range

    'シートを変数格納
    Set Sht1 = Sheets("Sheet1")
    Set Sht2 = Sheets("Sheet2")
    
    '列を参照範囲に格納
    Set MyArea = Sht1.Range("A:B")
    
    '2~6行目をループ
    For i = 2 To 6

        '「名前」を取得
        Target = Sht2.Cells(i, 1).Value

        With ActiveSheet
            Sht2.Cells(i, 2) = Application.WorksheetFunction. _
                Vlookup(Target, MyArea, 2, False)
        End With

    Next i

End Sub
マクロ実行後

VLOOKUP関数で、別シートを参照して複数セルに転記します。

[Set MyArea = Sht1.Range(“A:B”)] で、列を参照します。


 

VLOOKUP関数でセル値取得(1番右側シート参照)

以下のマクロを実行すると、vlookup関数で値を転記します。


Sub Vlookup関数で値取得()

Dim Target As String
Dim ShtA As Worksheet
Dim ShtB As Worksheet

    Set ShtA = Sheets("Sheet1")
    Set ShtB = Worksheets(Worksheets.Count)

    '「名前」を取得
    Target = ShtA.Range("A2").Value

    With ActiveSheet
        ShtA.Range("B2") = Application.WorksheetFunction. _
            Vlookup(Target, ShtB.Range("A1:B6"), 2, False)
    End With

End Sub
マクロ実行後

VLOOKUP関数で、セルB2に値を転記します。

[Set ShtB = Worksheets(Worksheets.Count)] で、1番右側のシートを指定します。

シート名の可変に対応できます。


 

 
この記事がお役に立ちますと幸いです。
 

【エクセルマクロ】ワークシート処理を自動化する:超便利38選
...

 

「Excel自動化[最強]時短仕事術」
自動化の基礎と時短に役立つテクニック解説書
毎日の定型業務を手際良く行え、大幅な業務効率化を実現!