Vba:別シートからvlookupを使用する方法


VBA を使用して別のシートから VLOOKUP を実行するには、次の基本構文を使用できます。

 Sub Vlookup()
    Range(" B2 ").Value = WorksheetFunction.Vlookup(Range(" A2 "), Sheets(" Sheet2 ").Range(" A2:C11 "),3,False)
End Sub

この特定の例では、 Sheet2というシートの範囲A2:C11で現在のシートのセルA2の値を検索し、範囲の 3 列目に一致する値を見つけて、その結果を現在のシートのセルB2に割り当てます。

: Falseへの最後の引数は、完全一致が必要であることを指定します。

次の例は、この構文を実際に使用する方法を示しています。

例: VBA で別のシートから VLOOKUP を使用する方法

Excel ワークブックのSheet2というシートに次のデータ セットがあり、さまざまなバスケットボール選手に関する情報が含まれているとします。

ここで、 Sheet1というシートに移動し、 Sheet2のデータセットでチーム名「Kings」を検索し、 Sheet1の Assists 列で対応する値を返したいとします。

これを行うには、次のマクロを作成できます。

 Sub Vlookup()
    Range(" B2 ").Value = WorksheetFunction.Vlookup(Range(" A2 "), Sheets(" Sheet2 ").Range(" A2:C11 "),3,False)
End Sub

このマクロを実行すると、次の出力が表示されます。

このマクロは、キングスの3アシストの値を正しく返します。

セルA2のチーム名を変更してマクロを再度実行すると、新しいチーム名のヘルパー値が正しく検索されます。

たとえば、チーム名を「Warriors」に変更し、マクロを再度実行するとします。

マクロはウォリアーズの4アシストの値を正しく返します。

: VBA VLookupメソッドの完全なドキュメントはここにあります。

追加リソース

次のチュートリアルでは、VBA で他の一般的なタスクを実行する方法について説明します。

VBA: インデックス マッチングの使用方法
VBA: 複数の列でシートを並べ替える方法
VBA: 文字列に別の文字列が含まれているかどうかを確認する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です