VBA操作WORD(一):设置段落的行间距(行距)
在vba中可以用Paragraph对象或者ParagraphFormat对象设置各种段落间距。
一、设置段落的行间距(行距)
要设置段落的行间距(行距)可以使用LineSpacingRule属性和LineSpacing属性两者结合。
如下的vba代码分别演示了如何设置某个段落的行间距为1.5倍行距、单倍行距、多倍行距、固定行距、最小行距:
这里要特别注意的是,单倍行距就相当于原来的字体是什么高度,就是什么高度,没有增加额外的行间距。
Sub 设置段落的行间距() Dim oDoc As Document Set oDoc = Word.ActiveDocument Dim oP As Paragraph Set oP = oDoc.Paragraphs(1) With oP '行间距设置为1.5倍 .LineSpacingRule = wdLineSpace1pt5 '行间距设置为单倍 .LineSpacingRule = wdLineSpaceSingle '行间距设置为双倍 .LineSpacingRule = wdLineSpaceDouble '行间距设置最小值 .LineSpacingRule = wdLineSpaceAtLeast '设置最小行距为48磅,1 line=12磅 .LineSpacing = Word.Application.LinesToPoints(4) '行间距设置为多倍 .LineSpacingRule = wdLineSpaceMultiple '设置行距为6行 .LineSpacing = Word.Application.LinesToPoints(6) '行间距设置为固定值 .LineSpacingRule = wdLineSpaceExactly '设置行距为固定值60磅 .LineSpacing = Word.Application.LinesToPoints(5) End With End Sub
二、设置段前、段后的间距
要设置段落前或段落后的行距,可以使用SpaceBefore和SpaceAfter属性,还可以通过设置SpaceBeforeAuto 和SpaceAfterAuto 属性把段前和段后的间距设置为自动设置。
Sub 设置段前、段后的间距() Dim oDoc As Document Set oDoc = Word.ActiveDocument Dim oP As Paragraph Set oP = oDoc.Paragraphs(1) With oP '段落后面空5行 .SpaceAfter = Word.Application.LinesToPoints(5) '段落前面空5行 .SpaceBefore = Word.Application.LinesToPoints(5) End With End Sub