vlookup 用のマクロを作成したいのですが、私の場合、列の参照が 1 つの基準から次の基準に自動的に変更されます。問題は次のとおりです。
1 つの Excel シートに、すべての企業と利用可能な製品のリストがあります。
http://wikisend.com/download/910578/product.jpg
これで、各企業のシートができました。各会社のvlookupを行い、利用可能な製品を特定の会社シートに入れたいです。新しいシートはこのようになります。
http://wikisend.com/download/482612/single comp.png
各会社の列には既に製品名があるため、列をコピーして挿入することはできません。また、すべての会社に対してマクロを実行したい (各会社は X1 として別のシートを持っています)。
ご協力ありがとうございました。
更新されたコード:
Sub UpProd()
Dim ws As Worksheet
Dim DataRange As Range, UpdateRange As Range, aCell As Range, bCell As Range
Dim s As String
Dim z As Variant
s = "X1,X2,X3"
z = VBA.Split(s, ",")
On Error GoTo Err
For Each i In z
Set ws = Worksheets("Sheet5")
Set UpdateRange = Worksheets(i).Range("A2:A21")
Set DataRange = ws.Range("A2:A12")
For Each aCell In UpdateRange
Set bCell = DataRange.Find(What:=aCell, LookIn:=xlValues, _
LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)
If Not aCell Is Nothing Then
aCell.Offset(, 1) = bCell.Offset(, 1)
End If
Next
Next i
Exit Sub
Err:
MsgBox Err.Description
End Sub