加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

word中利用VBA批量删除符合一定条件的行

(2011-04-13 17:50:56)
标签:

杂谈

利用宏实现批量删除行的目的
‘函数功能:批量删除文档中第4-36个表格中第二列含有“不详”字符串的行
Sub delete()
Dim n, col, nn As Integer
n = 1  'word文档中表的序号
col = 1 ' 要匹配的列
Dim flag As Boolean 
flag = True '标志本表格是否执行完成
For j = n To n + 32
    Do While (flag)
     nn = ActiveDocument.Tables(j).Rows.Count  ’表格的行数
     For i = 1 To nn
            If InStr(ActiveDocument.Tables(j).Cell(i, col), "不详") > 0 Then
             ActiveDocument.Tables(j).Rows(i).Delete
             i = 1
             Exit For  ’删除一条记录后退出循环,重新开始检测删除,否则行号i将会导致“超出范围的错误”
            End If
            If i = nn Then
             flag = False  '如果行号等于行数,表示本表检测完成
            End If
     Next
    Loop
Next
MsgBox "完成"
End Sub

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有