本文介绍word vba操作表格的 格式化、对齐方式、自动调整、分布行、分布列功能。
一、格式化
Sub 设置表格()
Dim t As Table
For Each t In ActiveDocument.Tables
'表格的格式化
t.Select
Selection.ClearFormatting
t.Style = "普通表格"
Next
End Sub
二、对齐方式
Sub 设置表格()
Dim t As Table
For Each t In ActiveDocument.Tables
'设置表格的对齐方式
'水平靠右
t.Range.ParagraphFormat.Alignment = wdAlignParagraphRight
'垂直居中
t.Range.Cells.VerticalAlignment = wdCellAlignVerticalCenter
Next
End Sub
三、自动调整
Sub 设置表格()
'自动调整功能
'Table.AutoFitBehavior 方法
'确定 Microsoft Word 如何使用自动调整功能来调整表格的大小
'
'说明
'Word 可以根据表格单元格的内容或文档窗口的宽度重新调整表格的大小。
'也可使用本方法来关闭“自动调整”功能。
'这样,表格的大小是固定值,而不随单元格内容或窗口宽度而改变。
'
'将 AutoFitBehavior 属性设置为 wdAutoFitContent 或 wdAutoFitWindow
'会将 AllowAutoFit 属性设置为 True(如果该属性当前为 False)。
'同样,将 AutoFitBehavior 属性设置为 wdAutoFitFixed 会将 AllowAutoFit 属性设置为 False(如果该属性当前为 True)。
Dim t As Table
For Each t In ActiveDocument.Tables
t.AllowAutoFit = True
t.AutoFitBehavior (wdAutoFitContent)
Next
End Sub
四、分布行和分布列
Sub 设置表格()
Dim t As Table
For Each t In ActiveDocument.Tables
'分布行
' Rows.DistributeHeight 方法 将指定行或单元格的高度调整为相等
' Cells.DistributeHeight 方法 将指定单元格调整为等高。
t.Range.Cells.DistributeHeight
t.Rows.DistributeHeight
'分布列
'Columns.DistributeWidth 方法
'Cells.DistributeWidth 方法
t.Range.Cells.DistributeWidth 将指定列调整为等宽
t.Columns.DistributeWidth 将指定单元格调整为等宽
Next
End Sub
本示例将第一张表格的前三行高度调整为相等
'本示例将第一张表格的前三行高度调整为相等
Sub test()
Dim rngTemp As Range
'定义前三行为一个区域
Set rngTemp = ActiveDocument.Range(Start:=ActiveDocument _
.Tables(1).Rows(1).Range.Start, _
End:=ActiveDocument.Tables(1).Rows(3).Range.End)
'将定义区域内行的高度调整为相等
rngTemp.Rows.DistributeHeight
End Sub
标签:Tables,vba,word,Sub,表格,Range,ActiveDocument,End
From: https://blog.51cto.com/shenjiren/5974335