Я занимаюсь VBA и разработал часть кода, которая считает одинаковые поля из 2 сравниваемых строк. Первой проверкой является то, что имя листа в ячейке (6, 2) совпадает с заданной начальной точкой j, 'final_col' - последний столбец на листе, где я хочу прекратить сравнение. Затем установите, где я хочу искать точно такие же поля (другой лист, который имеет то же имя, что и ячейка (6, 2).
For Each ws In ThisWorkbook.Worksheets
If ws.Name = Cells(6, 2) Then
id_match_cnt = 0
For j = 6 To final_col
For i = j - 1 To final_col
fr = ws.Cells(65000, 5).End(xlUp).Row - 15
If Cells(6, j) = ws.Cells(ws.Cells(65000, 5).End(xlUp).Row - 15, i) Then
id_match_cnt = id_match_cnt + 1
Cells(6, j).Interior.ColorIndex = 19
Exit For
End If
Next i
Next j
End If
Дело в том, чтобы сравнить строку j со строкой i, и ячейки переходят в 1,2, 3, 4, 5, 6 .... final_col в обоих циклах for. Моя проблема в том, что в j-й строке ячейка с "id_elements_red" находится в позиции 3, а в строке i - в позиции 1, и она не считается одинаковойили вне досягаемости, какие-либо мнения?