Delete Row if value in row changes

  • Thread starter Thread starter jscorsone
  • Start date Start date
J

jscorsone

I have a workbook with duplicate rows where multiple columns may remain the
same, but column F may change from row to row.

I'm trying to delete all rows that are direct duplicates of the row above it
so I can view just the rows where column F is different (if all other columns
are similar as row above.)

Thanks for any assistance!
 
Hi there,

Try the following:

Sub DeleteDublicatedRowsAtoE()
Dim Sht As Worksheet
Dim ColsStr1 As String, ColsStr2 As String
Dim LastRow As Long
Dim i As Long

Set Sht = ThisWorkbook.Worksheets("Sheet1")
With Sht
LastRow = .Cells(.Rows.Count, 1).End(xlUp).Row


For i = LastRow To 2 Step -1
ColsStr1 = _
.Cells(i, 1) & _
.Cells(i, 2) & _
.Cells(i, 3) & _
.Cells(i, 4) & _
.Cells(i, 5)

ColsStr2 = _
.Cells(i - 1, 1) & _
.Cells(i - 1, 2) & _
.Cells(i - 1, 3) & _
.Cells(i - 1, 4) & _
.Cells(i - 1, 5)

If ColsStr1 = ColsStr2 Then .Rows(i).Delete
Next i
End With
End Sub
 
Thank you so much for the speedy response.

Exactly what I was looking for, thanks again.
 
Back
Top