可以使用宏,编写脚本代码来进行批量修改。需要在“开始”-“选项”页将开发工具放入快捷工具栏,点击“开发工具”,选择“宏”,可以看到有很多预设的宏代码,这里不用自带的,点击创建,敲入代码能达到想要的功能。
- 全选word中所有的表格
Sub SelectAllTable()
Dim tempTable As Table
Application.ScreenUpdating = False
'判断文档是否被保护
If ActiveDocument.ProtectionType = wdAllowOnlyFormFields Then
MsgBox "文档已保护,此时不能选中多个表格!"
Exit Sub
End If
'删除所有可编辑的区域
ActiveDocument.DeleteAllEditableRanges wdEditorEveryone
'添加可编辑区域
For Each tempTable In ActiveDocument.Tables
tempTable.Range.Editors.Add wdEditorEveryone
Next
'选中所有可编辑区域
ActiveDocument.SelectAllEditableRanges wdEditorEveryone
'删除所有可编辑的区域
ActiveDocument.DeleteAllEditableRanges wdEditorEveryone
Application.ScreenUpdating = True
End Sub
- 对每个表格做相同的处理
Sub Change()
Dim tempTable As Table
For Each tempTable In ActiveDocument.Tables
'做要做的操作,下面是举例1
tempTable.Rows(3).Delete
'做要做的操作,下面是举例2
tempTable.Cell(4, 3).Select
With Selection
Selection.Font.ColorIndex = wdWhite
End With
Next
'做要做的操作,下面是举例3
For i = 1 To ActiveDocument.Tables.Count
ActiveDocument.Tables(i).Style = "常用格式"
Next
End Sub
所有表格居中
所有表格居中
Private Sub Document_Open()
Application.Browser.Target = wdBrowseTable
For i = 1 To ActiveDocument.Tables.Count
ActiveDocument.Tables(i).AutoFitBehavior (wdAutoFitContent) '根据内容自动调整表格
ActiveDocument.Tables(i).AutoFitBehavior (wdAutoFitWindow) '根据窗口自动调整表格
ActiveDocument.Tables(i).Range.ParagraphFormat.Alignment = wdAlignParagraphCenter '水平居中
ActiveDocument.Tables(i).Range.ParagraphFormat.Alignment = wdCellAlignVerticalCenter '垂直居中
Next i
End Sub
其它参考链接:
访问绘制表格中单独的行或列,而表格不统一
使用word中的宏实现选中指定类型表格,并且批量修改样式结构
微软官方的Font.ColorIndex等属性注解