Word VBA常用代码合集
▎写在前面
都说写VBA像累积木,除了核心部分的循环逻辑思路,其余都是再堆砌代码。这篇文章就罗列一下我在写Word VBA程序中,常用的一些代码。
今天先介绍操作Word表格部分。
•新建表格
在光标位置,新建一个1行3列的表格,边框线设置为实线。
sub test
Set tb = ActiveDocument.Tables.Add(Selection.Range, 1, 3)
tb.Style = "网格型"
end sub
•向表格里面写入值
两种方式
Sub 第一种写入方法()
Dim t As Table
Set t = ActiveDocument.Tables(1)
1).Range = 1
End Sub
Sub 第二种写入方法()
Set t = ActiveDocument.Tables(1).Range
For i = 1 To t.Cells.Count
i =
Next
End Sub
•设置表格列宽
设置表格的列宽,其中需要注意单位的转换。厘米和磅。
Sub 设置word表格的宽度()
Dim tbl As Table
Set tbl = ActiveDocument.Tables(2)
Application.CentimetersToPoints(1.42) =
Application.CentimetersToPoints(5.07) =
Application.CentimetersToPoints(2.13) =
Application.CentimetersToPoints(4.33) =
Application.CentimetersToPoints(18.99) =
End Sub
•判断光标是否在表格中
利用的是information方法判断
Sub 判断光标是否在表格里()
If Selection.Information(wdWithInTable) = True Then
MsgBox "光标在表格里"
Else
MsgBox "光标不在表格里"
End If
End Sub
•表格中插入多行
Sub 表格最后插入2行()
Dim myTable As Table
Set myTable = ActiveDocument.Tables(1)
myTable.Rows.Last.Select
2
End Sub
•向表格末尾插入内容并居中
利用move方法,移动光标,写内容
Sub 向表格末尾插入内容并居中()
Dim tbl As Word.Table
For Each tbl In Selection.Range.Tables
tbl.Range.Cells(tbl.Range.Cells.Count).Select
Selection.Move wdCharacter, 2
Selection.TypeParagraph
Selection.Move wdParagraph, -1
Selection.TypeText "表格X"
Selection.Extend
'/字体格式
With Selection.Range.Font
.Color = -16777216
.NameFarEast = "宋体"
.Size = 10 '字号 四号
.Bold = 0 '加粗为1,不加粗为0
End With
With Selection.ParagraphFormat
.LineSpacing = 20 '行间距20磅
.Alignment = wdAlignParagraphCenter '居中显示
End With
Next
End Sub
•表格居中
内容居中,表格整体居中
Sub 向表格末尾插入内容并居中()
'将表格内容调整为上下,左右居中
For Each oTable In oDoc.Tables
oTable.AutoFitBehavior (wdAutoFitWindow) '根据窗口调整内容
oTable.Range.ParagraphFormat.Alignment = wdAlignParagraphCenter '水平居中
oTable.Range.Cells.VerticalAlignment = wdCellAlignVerticalCenter '垂直居中
oTable.Rows.Alignment = wdAlignRowCenter '表格整体居中
Next
End Sub
•选中第二页第一个表格
Sub test()
With Selection
.GoTo wdGoToPage, , 2
.Bookmarks("\Page").Range.Tables(2).Select
End With
End Sub
评论