我有两个不同的工作簿,即工作簿A和工作簿B。我根据一些条件对工作簿A进行过滤,过滤后剩下的一切,我都从该工作簿的工作表1的D栏中获取,用于工作簿B的工作表2的E列中的匹配。在这种情况下,工作簿B是活动工作簿。
如果存在匹配项(如果可以在工作簿B的E列中找到过滤后的工作簿A的D列中的值),我想删除从工作簿B中找到该匹配项的整个行。但是,我在执行此操作时遇到了一些困难。这是我到目前为止的内容:
Sub UpdateMatrix()
'
' UpdateMatrix Macro
'
'
Dim Cell As Range
Dim FoundCell As Range
Dim FindString As String
' Dim RowNum As Long
For Each Cell In Workbooks("Workbook A.xlsm").Worksheets("Sheet 1").Range("D6:D65536")
If IsEmpty(Cell) Then Exit For
If Cell.EntireRow.Hidden = False Then
With Workbooks("Workbook B.xlsm").Worksheets("Sheet 2").Range("E2:E65536")
Set FoundCell = .Find(What:=Cell.Value, _
LookIn:=xlValues, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
If Not FoundCell Is Nothing Then
FoundCell.EntireRow.Delete
End If
End With
End If
Next
End Sub
但是,它无法按预期运行(即使工作簿之间存在匹配,但该行并未从工作簿B中删除)。有什么想法吗?非常感谢!