У меня возникла проблема. То, что я пытаюсь выполнить, - сравнить четыре столбца, если ячейки совпадают, а затем вернуть две ячейки в одну строку. Для примера я сравниваю как A & B от D & E с выходом F & G в той же строке. Место назначения не имеет большого значения, так как я могу его изменить. Что я сделал, только сравнивает два столбца, которые работают, но также добавляет другие ячейки, которые не должны применяться к этой конкретной строке.Сравните четыре столбца с возвратом двух столбцов?
Sub Add_XY()
For Each cell In ThisWorkbook.Sheets("Data").UsedRange.Columns("K").Cells
Dim offs As Long: offs = 2 ' <-- Initial offset, will increase after each match
compareValue = cell.Value & "-" & cell.Offset(, 1).Value
ThisWorkbook.Sheets("Data").Range("K6").Value = compareValue
If Not compareValue = "-" Then
For Each compareCell In ThisWorkbook.Sheets("P&T Data").UsedRange.Columns("AI").Cells
'For Each compareCell In ThisWorkbook.Sheets("Data").UsedRange.Columns("A").Cells
If compareCell.Value & "-" & compareCell.Offset(, 1).Value = compareValue Then
ThisWorkbook.Sheets("Data").Range("K6").Value = compareCell.Value & "-" & compareCell.Offset(, 1).Value 'test return value
cell.Offset(, offs).Value = compareCell.Offset(, 5).Value
cell.Offset(, offs + 1).Value = compareCell.Offset(, 6).Value
offs = offs + 4 ' <-- now shift the destination column by 4 for next match
Else
End If
Next compareCell
End If
Next cell
End Sub
Итак, можете ли вы привести пример в приведенном выше наборе данных о том, что можно считать совпадением? (Строка 2,3, 4 или 5?) И какой результат должен быть в столбцах F и G? –
Есть два совпадения: арахисовое масло (A2: B2) и французский жар (A4: B4). Результатом будут следующие два столбца (F: G) в той же строке, отображаемой в столбцах I и J – Noisewater