插入内容

使用Range对象的InsertAfter方法或InsertBefore方法在字符序列后面或前面插入指定文本。下面在文档中定义一个字符序列,设置字符序列中文本字体的大小为30。在字符序列后面插入文本"After",在字符序列前面插入文本"Before"。[大谦Excel,dqexcel点com]

code.vba
Sub Test()
  '插入文本
  Dim doc As Document
  Set doc = Documents.Open("D:\test2.docx")
  Dim rng As Range
  Set rng = doc.Range(Start:=25, End:=34)
  rng.Font.Size = 30
  rng.InsertAfter "After"
  rng.InsertBefore "Before"
End Sub

设置效果如图3-22所示。可见,插入的文本采用插入点前面的字符的格式进行显示。

Document Image

图3-22 在字符序列后面或前面插入文本

用Range对象的InsertBreak方法插入分页符、分栏符或分节符。该方法的语法格式为:

code.vba
rng.InsertBreak(Type)

其中,Type表示要插入的中断的类型,取值为wdBreakType常量之一,如表3-5中所示,默认值为wdPageBreak,即分页符。

表3-5 中断的类型

中断的类型 常 数
分栏符 8 wdColumnBreak
换行符 6 wdLineBreak
换行符 9 wdLineBreakClearLeft
换行符 10 wdLineBreakClearRight
分页符 7 wdPageBreak
连续分节符 3 wdSectionBreakContinuous
偶数页分节符 4 wdSectionBreakEvenPage
下一页分节符 2 wdSectionBreakNextPage
奇数页分节符 5 wdSectionBreakOddPage
终止当前行,强制文本在图片、表格或其他项目的下方继续 11 wdTextWrappingBreak

下面在文档中第25个字符后面插入换行符。

code.vba
Sub Test3()
  '插入中断
  Dim doc As Document
  Set doc = Documents.Open("D:\test2.docx")
  Dim rng As Range
  Set rng = doc.Range(Start:=25, End:=25)
  rng.InsertBreak wdLineBreak
End Sub

插入换行符后的效果如图3-23所示。

Document Image

图3-23 在字符序列后面插入换行符

使用Range对象的InsertDateTime方法在字符序列后面插入日期或时间,用该方法的DateTimeFormat参数指定日期或时间的格式。下面定义字符序列,设置文本字体大小为30磅,使用Collapse方法防止插入日期的同时替换字符序列,用InsertDateTime方法在字符序列后面插入"MM/dd/yy"格式的日期。

code.vba
Sub Test4()
  '插入日期和时间
  Dim doc As Document
  Set doc = Documents.Open("D:\test2.docx")
  Dim rng As Range
  Set rng = doc.Range(Start:=25, End:=25)

  rng.InsertDateTime DateTimeFormat:="MM/dd/yy"
End Sub

设置效果如图3-24所示。

Document Image

图3-24 在字符序列后面插入日期

使用Range对象的InsertSymbol方法插入一个符号。该方法的语法格式为:

code.vba
rng.InsertSymbol CharacterNumber, Font, Unicode, Bias

为了说明该方法参数的意义,请先在Word软件的“插入”功能区找到“符号”,逐级打开下拉箭头,最后单击“其他符号…”按钮,打开“符号”对话框,如图3-25所示。

Document Image

图3-25 “符号”对话框

InsertSymbol方法的第1个参数为CharacterNumber,表示的是要插入符号的字符代码。在“符号”对话框中,首先在“字体”下拉式列表框中单击“Symbol”,打开符号集如图3-28中所示。选定一个符号后,“字符代码”文本框中就显示该符号的代码。注意,CharacterNumber参数的取值即为该代码。Font参数表示符号字体的名称,这里就是"Symbol"。Unicode参数的值为真时,表示插入unicode字符;为假时表示插入ANSI字符。Bias参数设置符号的字体偏量。

插入符号时,默认情况下会替换掉字符序列。如果不进行替换,使用Collapse方法。

下面在文档中定义一个字符序列,使用Collapse方法,用InsertSymbol方法插入代码为87的符号。

code.vba
Sub Test5()
  '插入特殊字符
  Dim doc As Document
  Set doc = Documents.Open("D:\test2.docx")
  Dim rng As Range
  Set rng = doc.Range(Start:=25, End:=25)

  rng.InsertSymbol CharacterNumber:=87, Font:="Symbol"
End Sub

效果如图3-26中所示,在Applic后面插入了特殊字符。

Document Image

图3-26 插入特殊符号