我有一个包含102个工作表的工作簿。我想循环遍历每个工作表 并删除工作表中的重复项(而不是整个工作簿)。
我目前有这段代码:
Sub DeleteDuplicates()
Set ws = ThisWorkbook.Worksheets
For Each X In ws
X.Range("A:B").RemoveDuplicates Columns:=Array(1, 2), Header:=xlYes
Next
End Sub
我相信它会删除出现在工作簿中任何位置的重复项,而不仅仅是在单个工作表中。有没有办法限制此代码,以便它只从它正在运行的特定工作表中删除重复项?
答案 0 :(得分:2)
这会循环显示工作簿中的每个工作表。如果需要通过添加IF语句来跳过任何工作表,则可以指定工作表。
Public Sub DeleteDuplicates()
Dim ws as Worksheet
Dim wb as Workbook
Set wb = ThisWorkbook
For Each ws In wb.Worksheets
ws.Range("A:B").RemoveDuplicates Columns:=Array(1, 2), Header:=xlYes
Next ws
End Sub