插入带有字段(文件名)

时间:2018-01-04 13:38:19

标签: word-vba

我正在使用Word 2010 Office,我有一个宏,它插入一个带有文本" ABC"的文本框。

Sub AddATextBox()
 Dim Box As Shape
 Set Box = ActiveDocument.Shapes.AddTextbox( _
 Orientation:=msoTextOrientationHorizontal, _
 Left:=20, Top:=780, Width:=100, Height:=100)

 With Box
 .TextFrame.TextRange.Text = "ABC"
 .Line.Visible = msoFalse
 Box.TextFrame.TextRange.Font.Name = "Arial"
 Box.TextFrame.TextRange.Font.Size = 6
 End With
 End Sub

而不是文本" ABC",我希望这个宏在文本框中插入字段"文件名"。最好没有文件扩展名,但如果它很复杂,那么我可以忍受它。

怎么做?感谢

1 个答案:

答案 0 :(得分:0)

下面的代码会在页面底部插入一个文本框,并将活动文档的名称写入其中。请注意,形状不是页脚的一部分。它锚定在主要文件正文中。

Sub InsertATextBox()

    Dim Box As Shape
    Dim Sp() As String

    Debug.Print ActiveDocument.Name

    Set Box = ActiveDocument.Shapes.AddTextbox( _
                             Orientation:=msoTextOrientationHorizontal, _
                             Left:=20, Top:=780, Width:=120, Height:=12)

    Sp = Split(ActiveDocument.Name, ".")
    ReDim Preserve Sp(UBound(Sp) - 1)

    With Box
        With .TextFrame.TextRange
            .Text = Join(Sp, ".")
            .Font.Name = "Arial"
            .Font.Size = 6
        End With
        .Line.Visible = msoFalse
    End With
 End Sub