【发布时间】:2018-03-07 21:12:33
【问题描述】:
我是 Excel vba 的新手,我想在这里做的是, 根据 C 列中的值删除所有重复行。因此,只要 c 列具有重复值,它将删除整行。到目前为止我有这个
Sub RemoveDupe()
Dim rCell As Range
Dim rRange As Range
Dim lCount As Long
Set rRange = Range("C1", Range("C" & Rows.Count).End(xlUp))
lCount = rRange.Rows.Count
For lCount = lCount To 1 Step -1
With rRange.Cells(lCount, 1)
If WorksheetFunction.CountIf(rRange, .Value) > 1 Then
.EntireRow.Delete
End If
End With
Next lCount
End Sub
但这里是第一个值,我也想删除那个值。只有没有任何重复或唯一的行将保留。 有什么帮助吗?
【问题讨论】:
-
为什么不使用“数据”菜单中的“删除重复项”?我认为将同一个变量用于两个不同的事物并不是一个好习惯。
-
您是说要删除所有包含重复数据的行,还是只删除没有重复数据的行?您的第一段和最后一段似乎有冲突。
-
@BerticusMaximus - 确实如此,“没有任何重复”或“唯一”!