在VBA中使用Word格式
本主题包含Visual Basic部分中的任务相关的示例。
将格式应用于选择内容
下面的示例使用 Selection 属性将字符和段落格式应用于选定文本。 使用 Font 属性可访问字符格式设置属性和方法,使用 ParagraphFormat 属性可访问段落格式设置属性和方法。
Sub FormatSelection()
With Selection.Font
.Name = "Times New Roman"
.Size = 14
.AllCaps = True
End With
With Selection.ParagraphFormat
.LeftIndent = InchesToPoints(0.5)
.Space1
End With
End Sub
将格式应用于区域
下面的示例定义了一个 Range 对象,该对象引用活动文档的前三个段落。 Range 对象的格式是通过应用 Font 和 ParagraphFormat 对象的属性来设置的。
Sub FormatRange()
Dim rngFormat As Range
Set rngFormat = ActiveDocument.Range( _
Start:=ActiveDocument.Paragraphs(1).Range.Start, _
End:=ActiveDocument.Paragraphs(3).Range.End)
With rngFormat
.Font.Name = "Arial"
.ParagraphFormat.Alignment = wdAlignParagraphJustify
End With
End Sub
插入文本并应用字符和段落格式
以下示例在当前文档的顶部添加“Title”。 第一段居中对齐,并在该段落之后添加半英寸的间距。 将单词"Title"的格式设为 24 磅 Arial 字体。
Sub InsertFormatText()
Dim rngFormat As Range
Set rngFormat = ActiveDocument.Range(Start:=0, End:=0)
With rngFormat
.InsertAfter Text:="Title"
.InsertParagraphAfter
With .Font
.Name = "Tahoma"
.Size = 24
.Bold = True
End With
End With
With ActiveDocument.Paragraphs(1)
.Alignment = wdAlignParagraphCenter
.SpaceAfter = InchesToPoints(0.5)
End With
End Sub
切换 12 磅和无格式之间的段落前的空格
下面的示例切换选定内容中第一段的段前间距。 该宏检索当前段前间距的值,如果该值为 12 磅,则删除段前间距( SpaceBefore 属性设为零)。 如果段前间距为 12 以外的其他值,则 SpaceBefore 属性设为 12 磅。
Sub ToggleParagraphSpace()
With Selection.Paragraphs(1)
If .SpaceBefore <> 0 Then
.SpaceBefore = 0
Else
.SpaceBefore = 6
End If
End With
End Sub
在应用加粗格式与取消加粗格式之间切换
下面的示例切换选定文本的加粗格式。
Sub ToggleBold()
Selection.Font.Bold = wdToggle
End Sub
将左边距增加 0.5 英寸
下面的示例将左边距和右边距增加 0.5 英寸。 PageSetup 对象包含文档的所有页面设置属性(如左边距、下边距和纸张大小)。 LeftMargin 属性用于返回和设置左边距设置。 RightMargin 属性用于返回和设置右边距设置。
Sub FormatMargins()
With ActiveDocument.PageSetup
.LeftMargin = .LeftMargin + InchesToPoints(0.5)
.RightMargin = .RightMargin + InchesToPoints(0.5)
End With
End Sub