Я пытаюсь сравнить данные столбца A и данные столбца C на листе 1 с данными столбца A листа 2 и данными C. Если в обоих столбцах есть совпадение, тогда лист одного столбца ("F") & row = весь сопоставленный ряд листа два. Я не работал с Excel VBA в течение многих лет и не смог решить эту проблему. Первоначально я хотел сделать это, используя для каждого l oop. Не очень хочу копировать вставить. Я просто пытаюсь увидеть, соответствует ли то, что на листе 2, всем данным на исходном листе 1. Если это соответствует, поместите эти данные в столбец F на листе 1 ..
Для тех, кто не может понять. Я работал над разными кодами больше недели, и этот тоже не работает. Я пытаюсь проверить, соответствуют ли все данные на втором листе данным на первом. Что я хочу сделать:
Если ячейки на листе один столбцы A и столбцы C совпадают с ячейками на листе два столбца A и столбцы C. Затем
Скопируйте ячейки, которые соответствуют столбцам листа 2, включают столбцы B и C
Вставьте на лист один столбец F
Sub TransferCompare()
Dim i As Long, j As Long, lastrow1 As Long, lastrow2 As Long, lastrow3 As Long
Dim OutputRow As Long
Dim bnk1, bnk3, qb1, qb3 As Variant
lastrow1 = Sheets("sheet1").Range("C" & Rows.Count).End(xlUp).row
lastrow2 = Sheets("Sheet2").Range("C" & Rows.Count).End(xlUp).row
For i = 3 To lastrow1
bnk1 = Sheets("Sheet1").Cells(i, 1).Value
bnk3 = Sheets("Sheet1").Cells(i, 3).Value
OutputRow = i
For j = 3 To lastrow2
qb1 = Sheets("Sheet2").Cells(j, 1).Value
qb3 = Sheets("Sheet2").Cells(j, 3).Value
If bnk1 = qb1 And bnk3 = qb3 Then
Sheets("Sheet1").Cells(OutputRow, 6).Resize(ColumnSize:=3).Value = _
Sheets("Sheet2").Cells(j, 1).Resize(ColumnSize:=3).Value
j = j + 1
OutputRow = OutputRow + 1 'increase row counter
End If
Next j
Next i
End Sub