シート 2 には、列 A に一連のルールがあります。
列 A の例では、各行に複数のコードがあり、行 B から H には、そのコードに対応するデータに基づくデータがあります。
シート 1 にコードの 1 つを配置し、このコードが列 A のコードと一致する場合、VBA がシート 2 から行 B:H を転送できるようにしたいと考えています。
これが私がこれまでに持っているプログラムです。行を転送しますが、正しい行は転送しません。
Dim i As Integer
Dim x As Integer
Dim row As Integer
Dim oldRow As Integer
Dim found As Boolean
Dim ws1 As Worksheet
Dim ws2 As Worksheet
Set ws1 = Worksheets("Sheet1")
Set ws2 = Worksheets("Sheet2")
Dim rng As Range, cell As Range, rng2 As Range, cell2 As Range
Set rng2 = ws2.Range("A1:A212")
Set rng = ws1.Range("A1:A212")
row = 1
oldRow = 1
For Each cell In rng
row = row + 1
For Each cell2 In rng2
oldRow = oldRow + 1
If cell.Value = cell2.Value Then
row = row - 1
ws1.Cells(row, 2) = ws2.Cells(oldRow, 2)
ws1.Cells(row, 3) = ws2.Cells(oldRow, 3)
ws1.Cells(row, 4) = ws2.Cells(oldRow, 4)
ws1.Cells(row, 5) = ws2.Cells(oldRow, 5)
ws1.Cells(row, 6) = ws2.Cells(oldRow, 6)
ws1.Cells(row, 7) = ws2.Cells(oldRow, 7)
ws1.Cells(row, 8) = ws2.Cells(oldRow, 8)
found = True
End If
Next
found = False
oldRow = 1
Next
End Sub
助けてくれてありがとう、ありがとう。