如何用vba操作word的题注?

如下图所示

在word中可以为表格、图形、公式等插入题注。

题注有自动插入的题注和手动插入的题注两种,自动插入的题注是指预先设置好,当插入某个具体的对象时,自动添加的题注。

题注有题注标签,在word中内置了3种题注标签,分别是Figure(图形)、Table(表格)、Equation(公式),这3种题注标签是不可删除的。

在vba中CaptionLabel对象代表题注标签,AutoCaption对象代表自动插入的题注。

除了内置的3种题注标签,还可以自定义的添加各种题注标签,使用CaptionLabels.Add方法可以添加自定义的题注标签。

上述的Figure(图形)、Table(表格)、Equation(公式)都是题注标签的名称,除了题注标签的名称,我们还可以设置题注标签的样式,如下图所示

可以通过CaptionLabel对象的NumberStyle、IncludeChapterNumber、ChapterStyleLevel、Separator等属性分别可以表示题注编号的数字格式、是否包含章节号、章节的起始样式和使用的分隔符等。

如果要用vba手动插入题注,可以使用Range对象或Selection对象的InsertCaption方法。

以下vba代码举例演示了如何添加自定义的题注标签以及在当前光标所在点插入题注。

Sub QQ1722187970()
    Dim oCL As CaptionLabel
    Dim oDoc As Document
    Set oDoc = Word.ActiveDocument
    Set oCL = Word.CaptionLabels.Add("表")
    With oCL
        .IncludeChapterNumber = True
        .NumberStyle = wdCaptionNumberStyleArabic
        '设置题注编号的章节样式为一级标题
        .ChapterStyleLevel = 1
        .Separator = wdSeparatorHyphen
    End With
    Word.Selection.InsertCaption "表", "这是一个手动插入的题注"
End Sub

 

 

       

发表评论