ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Deleting duplicates (https://www.excelbanter.com/excel-programming/320965-deleting-duplicates.html)

Judd Jones[_2_]

Deleting duplicates
 
I found this code he

Sub DeleteDuplicates()
'Deletes Duplicates in column called out "C"
Dim LastRow As Long
Dim i As Long
Application.ScreenUpdating = False
LastRow = Range("C" & Rows.Count).End(xlUp).Row
For i = LastRow To 1 Step -1
If WorksheetFunction.CountIf(Range("C:C"), Range("C" & i)) 1 Then
Range("C" & i).EntireRow.Delete
End If
Next 'i
Application.ScreenUpdating = True
End Sub

I am needing this changed to only delete column C and D.

Thanks in advance.

Sharad Naik[_4_]

Deleting duplicates
 
Replace " Range("C" & i).EntireRow.Delete "
With:
Range("C" & i & ":D" & i).Delete Shift:=xlUp

This is assuminng you want to shift cells up.
In case you want to shift cell to left replace
xlUp with xlToLeft

Sharad

"Judd Jones" wrote in message
...
I found this code he

Sub DeleteDuplicates()
'Deletes Duplicates in column called out "C"
Dim LastRow As Long
Dim i As Long
Application.ScreenUpdating = False
LastRow = Range("C" & Rows.Count).End(xlUp).Row
For i = LastRow To 1 Step -1
If WorksheetFunction.CountIf(Range("C:C"), Range("C" & i)) 1 Then
Range("C" & i).EntireRow.Delete
End If
Next 'i
Application.ScreenUpdating = True
End Sub

I am needing this changed to only delete column C and D.

Thanks in advance.




K Dales[_2_]

Deleting duplicates
 
Not clear what you are asking: Routine you give deletes entire row if value
in column C is duplicated (within column C). You want to do this for "only C
and D", but that could mean:
- find rows in C that are duplicated in C, delete; then same for D
- find rows where both C and D are duplicated and delete these rows
- find rows where C and/or D are duplicated and delete (erase?) "only C and D"

"Judd Jones" wrote:

I found this code he

Sub DeleteDuplicates()
'Deletes Duplicates in column called out "C"
Dim LastRow As Long
Dim i As Long
Application.ScreenUpdating = False
LastRow = Range("C" & Rows.Count).End(xlUp).Row
For i = LastRow To 1 Step -1
If WorksheetFunction.CountIf(Range("C:C"), Range("C" & i)) 1 Then
Range("C" & i).EntireRow.Delete
End If
Next 'i
Application.ScreenUpdating = True
End Sub

I am needing this changed to only delete column C and D.

Thanks in advance.



All times are GMT +1. The time now is 07:50 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com