【发布时间】:2016-03-06 19:28:10
【问题描述】:
VBA 新手。我正在使用下面的代码来识别和删除 Sheet1 中在 Sheet2 的 C 列中具有重复值的行,但我需要代码来不删除已经从过滤器中隐藏的行。
我已经四处搜索并尝试使用 .SpecialCells(xlCellTypeVisible) 但我不知道将它放在哪里。我认为的另一个选择是使用 EntireRow.Hidden 语法,但我也不知道如何合并它。
感谢任何帮助。
Sub DeleteDuplicates()
Application.ScreenUpdating = False
Dim Row As Long
Dim FoundDup As Range
Sheets("Sheet1").Select
For Row = Range("C65536").End(xlUp).Row To 2 Step -1
Set FoundDup = Sheets("Sheet2").Range("C:C").Find(Cells(Row, 3), LookIn:=xlValues, lookat:=xlWhole)
If Not FoundDup Is Nothing Then
Cells(Row, 3).EntireRow.Delete
End If
Next Row
Application.ScreenUpdating = True
End Sub
【问题讨论】:
-
如果解决方案有效,请将答案标记为已接受。 (单击它旁边的复选标记。):-)
标签: vba excel duplicates