2
我想在Excel中创建VBA中的宏,如果它不包含另一个工作表中的范围中列出的值,将删除1表的整个行。下面是设置:基于Excel中的条件比较删除行VBA
在片材1(库存数据),也有在第2列
在表2(tech_translate)的一组值,也有在第1列的一组值。
基本上,我想以下情况发生:在所有那些在库存数据2列单元格的
检查值,
匹配起来反对的值是在细胞在tech_translate的第1列中,
如果在tech_translate匹配值,请在库存数据没有到该行,
如果没有在tech_translate匹配的值,然后删除库存数据的整个行。
我希望这是有道理的。为了帮助,这里是我目前的代码,显示我卡住的地方。我一直得到一个类型不匹配的错误 - 我知道为什么,但不知道如何解决它或我需要做什么才能使其工作。
Sub deleteTechs()
Dim LastRow As Long
Dim CompRow As Range
Dim i As Integer
With Worksheets("tech_translate")
Set CompRow = .Range("a2", .Cells(.Rows.Count, "A").End(xlUp))
End With
LastRow = [A65536].End(xlUp).Row
For i = LastRow To 1 Step -1
If Cells(i, 2) <> CompRow.Cells Then Rows(i & ":" & i).EntireRow.Delete
Next i
End Sub