Я в основном вводю данные из ячейки и копирую их в другой набор ячеек, как показано в таблице ниже в качестве примера.Теперь мне нужно проверить, совпадают ли входные данные с предыдущими.Если это то же самое, я очищу эту строку и удалю ее из таблицы.
DATA1 DATA2 DATA3
cat 1 white
dog 2 white
dog 1 brown
cat 1 white (should be compared and removed from table - similar with 1st row)
Я пытался использовать функцию цикла For.Однако значение диапазона не может принять Range("S" & Lastrow & ":" & "X" & Lastrow)
.Не могли бы вы посоветовать, какой должен быть правильный формат для этого?Спасибо!
Sub RowCompare()
Dim ary1() As Variant
Dim Range1 As Range, Range2 As Range, rr1 As Range, rr2 As Range
Set xWs = ThisWorkbook.Sheets("Summary")
LastRow = xWs.Range("T" & Rows.Count).End(xlUp).Row + 1
'Check last row with previous rows
Set Range1 = Range("S5:X" & LastRow)
For i = LastRow - 1 To 2 Step -1
Set Range2 = Range("S")
Set rr1 = Range1.Rows(1)
Set rr2 = Range2.Rows(1)
ary1 = Application.Transpose(Application.Transpose(rr1))
ary2 = Application.Transpose(Application.Transpose(rr2))
st1 = Join(ary1, ",")
st2 = Join(ary2, ",")
If st1 = st2 Then
MsgBox "UPH already plotted"
Exit Sub
End If
Next
End Sub