ExcelのVBAでループについて、質問があります。
ループを勉強していて、わからないことがあります。
やりたいこと
Sheet2の表を参照して、Sheet1へ転記したいのです。
転記したい内容は5列です。
その列をループさせたいのです。
下記のコードを実行すると、作動はします。
しかし、Sheet1のA列しか参照できなく、B列~E列は参照されないようなのです。
どこがおかしいのか、お手数ですがご教示していただけないでしょうか?
よろしくお願いします。
Sub ????()
Dim a As Worksheet
Dim h As Worksheet
Set a = Worksheets("Sheet1")
Set h = Worksheets("Sheet2")
Dim myR As Variant
Dim key As Variant
Dim j As Long
maxrow = Cells(Rows.Count, "A").End(xlUp).Row
For key = 2 To maxrow '?Q??????l For j = 6 To 10 With Application i = 1 myR = .Index(h.Range("D:D"), .Match(a.Cells(key, i), h.Range("C:C"), 0)) If IsError(myR) = True Then Cells(key, j) = "" Else Cells(key, j) = myR i = i + 1 End If End With Next j Next key
End Sub
Sheet1,Sheet2の内容を画像にして提示していただけませんでしょうか。
Sheet1はマクロ実行前及び実行後に分けて提示していただけると更にわかりやすいです。
回答1件
あなたの回答
tips
プレビュー