在循环多个工作表时,联合上的错误

我试图删除一行中的行匹配来自多个其他工作表的行的条件。 我需要循环查看工作簿中的所有其他工作表,并且每次find匹配的内容时,都会删除第一个工作表中的整个行。 联盟上收到错误1004。 我以为这可能是因为你不能在表单中使用Union而造成的,所以我在每张表单之后都设置为Nothing。 我仍然得到相同的错误。

代码如下:

Sub findRemaining() Dim rngToDel As Range Dim fRng As Range 'Fund range Dim wCell As Range 'Working sheet cell Dim wRng As Range 'Working sheet range Dim WS_Count As Integer Dim I As Integer Set fRng = Worksheets("All").Range("B2:B1495") WS_Count = ActiveWorkbook.Worksheets.Count For I = 2 To WS_Count Set rngToDel = Nothing Set wRng = Worksheets(I).Range("B2:B200") For Each wCell In wRng 'Loop through all working cells ' if wCell found in Fund range then delete row If Not IsError(Application.Match(Trim(wCell.Value), fRng, 0)) Then If rngToDel Is Nothing Then Set rngToDel = wCell Else Set rngToDel = Union(rngToDel, wCell) End If End If Next wCell If Not rngToDel Is Nothing Then rngToDel.EntireRow.Delete Next I End Sub 

问题是我设置范围删除wCell中的wRng ,但真正想删除的是fRng中的单元fRng 。 通过修复代码的其余部分完美工作。 (谢谢克里斯)