1、打开Excel表格,使用【Alt】+【F11】组合快捷键打开VBA编辑器,也可以点击菜单栏上面的【开发工具】,【Visual Basic】打开VBA编辑器。
2、在VBA编辑器的菜单栏上面点击【插入】,【模块】。
3、在VBA编辑器的代码框里面输入以下程序:Sub deleterows()Dim i争犸禀淫&, k& '定义i,k为长整数On Error Resume 绿覆冗猩Next '忽略运行过程中出现的错误Application.ScreenUpdating = False '关闭屏幕更新,以加快宏的执行速度Set mysheet1 = ThisWorkbook.Worksheets("Sheet1") '定义工作表k = 1For i = 2 To 80000 '共执行这么多行k = k + 1 '从第二行开始If mysheet1.Cells(k, 1) = mysheet1.Cells(1, 6) Then '条件判断mysheet1.Rows(k).Delete shift:=xlUp '删除行k = k - 1 '如果删除一行,则少一行End IfNextApplication.ScreenUpdating = True '开启屏幕更新MsgBox "共删除:" & 80000 - k & "行" '弹出提示End Sub
4、程序释义:在程序里面,每删除一行,则少一行,下面的行会自动补上。如果单独使用For循环进行删除,将会漏掉一些,所以才引入行的中间变量k,每执行一个循环将增加一行(k=k+1),即使行被删坛冰核哧除后上移,其对应的条件行数还是不变(即:k=k-1)。
5、点击VBA编辑器工具栏上面的“运行”图标运行程序,或者按下【F5】键运行程序。
6、程序运行完成后,将会弹出删除多少行的提示,Excel表格上面满足条件的行已经被删除。