ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

如何批量处理word中的表格

2021-04-09 22:55:00  阅读:142  来源: 互联网

标签:Tables word 表格 批量 MyTable ActiveDocument Sub


如何批量处理word中的表格


1 . 批量设置word中的表格宽度

比如,我这有一个word文档有200多个表格(全部是3列的),现在要求第一列宽度3cm,第二列4cm,第三列5cm。一个一个改不太可能吧???执行如下的宏代码就搞定:



点击(此处)折叠或打开

  1. Sub Macro1()
  2. Dim MyTable As Table
  3. For Each MyTable In ActiveDocument.Tables
  4.     MyTable.PreferredWidth = CentimetersToPoints(16)
  5.     MyTable.Columns(1).PreferredWidth = CentimetersToPoints(3)
  6.     MyTable.Columns(2).PreferredWidth = CentimetersToPoints(4)
  7.     MyTable.Columns(3).PreferredWidth = CentimetersToPoints(5)
  8. Next
  9. End Sub



2.  word中批量选中所有的表格

执行如下的宏代码即可:


点击(此处)折叠或打开

  1. Sub select_all_tables()
  2.      Dim mytable As Table
  3.       Application.ScreenUpdating = False
  4.       For Each mytable In ActiveDocument.Tables
  5.          mytable.Range.Editors.Add wdEditorEveryone
  6.      Next
  7.     ActiveDocument.SelectAllEditableRanges (wdEditorEveryone)
  8.     ActiveDocument.DeleteAllEditableRanges (wdEditorEveryone)
  9.      Application.ScreenUpdating = True
  10. End Sub


方便大家查看,这里给出 word中批量选中所有的表格 例子,第一个类似:




按快捷键 ALT+F11后,  


运行宏代码之后就选定了  



3、 让word中所有的表格按照页面宽度调整



点击(此处)折叠或打开

  1. Private Sub Document_New()
  2. End Sub
  3. Private Sub Document_Open()
  4. Application.Browser.Target = wdBrowseTable
  5. For i = 1 To ActiveDocument.Tables.Count
  6. ' ActiveDocument.Tables(i).AutoFitBehavior (wdAutoFitContent) '根据内容自动调整表格
  7. ActiveDocument.Tables(i).AutoFitBehavior (wdAutoFitWindow) '根据窗口自动调整表格
  8. 'ActiveDocument.Tables(i).Range.ParagraphFormat.Alignment = wdAlignParagraphCenter '水平居中
  9. 'ActiveDocument.Tables(i).Range.ParagraphFormat.Alignment = wdCellAlignVerticalCenter '垂直居中
  10. Next i
  11. End Sub

标签:Tables,word,表格,批量,MyTable,ActiveDocument,Sub
来源: https://blog.51cto.com/lhrbest/2695534

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有