VBAで書くとこのようになる。

Sub 仕入先名取得( )
  Cod = Range("I4")
  Sire = WorksheetFunction .VLookup(Cod ,Sheets("仕入先一覧") .Range("B3:C500") ,2)
End Sub

I4 = 7 が Cod 変数に入り、WorksheetFunction で VLookup して Cod で抽出する。
Sire 変数に仕入先名が代入される。

上記のような、仕入伝票入力ファイルでは、仕入先コード番号、品名、個数、単価が納入伝票に
記載されていて、それを見ながら入力して行くことになり、納入伝票には仕入先の名称が記入されて
いるが、仕入伝票入力ではコード番号しか入力しないので、その番号の入力間違いを目視で確認する
為に表示する必要がある。

入力したデータは、データベースに格納されるが、そこでは仕入先名よりコード番号の方が、集計や
検索の入力時に文字数が少なくて時間短縮になる。
コードを入力して、仕入先名などを表示するには、VLookupは有効である。
= VLOOKUP ( I4 ,仕入先一覧 ! $B$3 : $C$500 ,2 )

ワークシート関数のVLookupの書式である。
I4=7 で、[仕入先一覧] シートの、B3からC500の範囲を参照して、7のある行の2列目の値を
取得し、このセルに表示する。

● VLookup関数は、ワークシート関数でワークシートのセルに記入するのが一般的であるが、
  VBAのWorksheetFunctionでも使用できる。ここではその両方を解説しよう。
 
基本的なマクロの習得
VLookupの活用


実際に使っているシステムの内容で解説
  EXCEL VBA 講座