0
点赞
收藏
分享

微信扫一扫

word vba 操作表格, 使用word vba创建表格、选中表格、删除表格

介绍使用vba语句操作word中的表格。 本文讲解word中使用vba来创建表格、选中表格、删除表格

一、创建表格

1、方法和参数

Tables.Add 方法 1672037163426.jpg WdDefaultTableBehavior 枚举 2.jpg WdAutoFitBehavior 枚举 3.jpg

2、参数设置注意问题

0.jpg 情形1图片.jpg 情形2图片.png

小结:如上图所示 禁用自动调整,不会调整列宽,会根据内容自动调整行高 启用自动调整,会 优先根据内容调整列宽,然后调整行高

3、代码示例

'创建一个3行4列的表格,并将其赋值给变量t '设置表格的样式为“网格型”

Sub 创建表格()
  Dim t As Table
  Set t = ActiveDocument.Tables.Add( _
  Range:=Selection.Range, _
  NumRows:=4, _
  NumColumns:=3, _
  DefaultTableBehavior:=1, _
  AutoFitBehavior:=2)
  t.Style = "网格型"
End Sub	

二、选中表格

1、使用的方法

1 Document.DeleteAllEditableRanges 方法 '简单的说,就是删除选中的区域,该区域具有可编辑权限 1.jpg

2 Document.SelectAllEditableRanges 方法 '简单的说,就是选中区域,该区域具有可编辑权限 2.jpg

3 Editors.Add 方法 '简单的说,就是增加有编辑权限的区域 1672042743957.jpg

WdEditorType 常量 3.jpg

2、选中所有表格

Sub 选中表格()
  Dim mytable As Word.Table
  '删除所有可编辑区域
  ActiveDocument.DeleteAllEditableRanges (-1)
  '添加可编辑区域
  For Each mytable In ActiveDocument.Tables
    mytable.Range.Editors.Add wdEditorEveryone
  Next
  '选中所有可编辑区域
  ActiveDocument.SelectAllEditableRanges (-1)
'此时,可以对所有选中的可编辑区域,进行统一的设置
  '设置所有表格的上边框的线条和颜色
  With Selection
    .Borders(wdBorderTop).LineStyle = wdLineStyleDouble
    .Borders(wdBorderTop).ColorIndex = wdDarkRed
  End With
  '删除所有可编辑区域
  ActiveDocument.DeleteAllEditableRanges (-1)
End Sub

3、选中指定的单个表格

'2、选中指定的表格
'选中活动文档中的第2个表格
Sub 选中指定的表格()
  ActiveDocument.Tables(2).Select
End Sub

Sub 逐一选中文档中的表格()
  Dim t As Table
  For Each t In ActiveDocument.Tables
    t.Select
  Next t
End Sub

三、删除表格

Table.Delete 方法 删除指定的表格。

1、删除指定的表格

Sub 删除指定的表格()
  '删除活动文档中的最后一个表格
  Dim n As Integer
  With ActiveDocument
    n = .Tables.Count
    .Tables(n).Delete
  End With
End Sub

2、删除所有表格

Sub 删除所有表格()
  Dim t As Table
  For Each t In ActiveDocument.Tables
    t.Delete
  Next
End Sub
举报

相关推荐

创建表格

0 条评论