両方のワークシートで、列 A にキーがあります。すべてのキー値が両方のワークシートにあるわけではありません。ワークシート 1 の列 A の各キー値について、ワークシート 2 で対応するキーを見つけ、ワークシート 2 の列 B のデータをワークシート 1 の列 B に移動します。
私はマクロをプログラムしたことがないので、このコードを書くことに完全に迷っています。
フィリップ、ここではVBAは必要ありません。
Sheet1のセルB1でこの数式を試してください。
=IFERROR(vlookup(A1,Sheet2!A:B,2,false),"")
XL 2003を使用している場合は、次のようにします。
=IF(ISERROR(vlookup(A1,Sheet2!A:B,2,false)),"",vlookup(A1,Sheet2!A:B,2,false))
次に、この数式を下にドラッグして、Sheet1の列Aの残りのデータを表示します。
注意-Sheet2はWorksheet2の想定される名前であり、ニーズに合わせて変更する必要がある場合があります。
NB2- vlookup
Excelヘルプ(またはオンライン)で検索して、Excelの機能をよりよく理解できます
このためにマクロを使用する必要がありますか?Excelを使用しているように思えますが、単純なVLOOKUP数式で必要な処理を実行できます。
VLOOKUPは次のようになります:= VLOOKUP(A1、Sheet2!$ A:$ B、2、FALSE)
ここで、A1は参照セルです(この場合、列Aに「キー」を入力します)。
Sheet2!$ A:$ Bはルックアップテーブルです(この場合、2番目のシートの列AとB)。
2は、左から数えて、データが必要な列番号です(この場合、2番目の列である列B)
FALSEは、完全一致の値のみを返すように数式に指示します。TRUEは、ルックアップテーブルで最も近い一致を返します。