删除列A包含工作表2的A列中的值的行

时间:2014-04-30 13:09:31

标签: excel vba excel-vba

我正在追踪一个40M的Excel文件,我正在考虑做一些删除。

例如,我有工作表1中的数据,以及我要在sheet2中删除的主键。

第1页

Column A | Column B | ...
0047     |  a       | ...
0048     |  b       | ...
0051     |  c       | ...

第2页

 Column A
 0047
 0051

请您告诉我如何编写删除工作表1中0047和0051行的VBA脚本? 我是VBA脚本新手。

1 个答案:

答案 0 :(得分:0)

尝试下面的代码。循环遍历行,直到找到使用下面一行后的值,您可以删除行:

Rows(i - j).Delete

完整代码:

Sub main()
Dim i As Integer
Dim j As Integer
j = 0
For i = 2 To 1000
    If (Cells(i - j, 1) = "0047") Or (Cells(i - j, 1) = "0051") Then
        Rows(i - j).Delete
        j = j + 1
    End If
Next i

End Sub