word宏 删除含有关键字的指定列或行

工作中,由于每次修改word文档,都需要进行繁琐的修改,删除多余的列或者调节表格的宽度。

使用列word宏编程的方式对word文档进行对应的操作。

宏:

 1 Sub del_key()
 2     Dim str As String
 3     Dim table_count, i, j, table_lie As Integer
 4     str = "符合程度"
 5     table_count = ActiveDocument.Tables.Count
 6     For i = 1 To table_count
 7         table_lie = ActiveDocument.Tables(i).Columns.Count
 8         For j = 1 To table_lie
 9             If InStr(ActiveDocument.Tables(i).Cell(1, j), str) > 0 Then
10                 ActiveDocument.Tables(i).Cell(1, j).Select
11                 Selection.Columns.Delete
12                 With ActiveDocument.Tables(i)
13                     .PreferredWidthType = wdPreferredWidthPercent
14                     .PreferredWidth = 110
15                 End With
16                 ActiveDocument.Tables(i).Rows.Alignment = wdAlignRowCenter
17             End If
18         Next
19     Next
20 End Sub

代码说明:

我只是去鉴别每个表格的第一行是否存在关键字,这是我的需求,存在就删除,如果你们的是按照列来的话,修改Cell(1, j)中的1,仿照循环语句来写;设置了居中属性。

使用方法:

打开word,打开宏,将此段代码复制到宏中,点击运行即可(首次使用,建议使用备份文件进行测试,目前不知道有没有bug,我目前没碰到)

1. str为关键字,输入关键字就可以将存在关键字的该列删除

2. .PreferredWidth为表格的宽度,可以设置成自己想要的宽度

猜你喜欢

转载自www.cnblogs.com/steven1995/p/10334366.html
今日推荐