Macos word中的宏以添加带有文件路径的文本框

Macos word中的宏以添加带有文件路径的文本框,macos,ms-word,textbox,filepath,Macos,Ms Word,Textbox,Filepath,我对这个完全陌生。我想创建一个宏,将文件路径(在宏运行时)添加到文档末尾的文本框中。我用Word 2016表示Mac 我在其他线程上找到了代码,这些代码帮助我理解如何创建文本框并确定其在文档中的位置,但我无法添加文件路径代码 这就是我到目前为止的想法: Sub percorsofile2() Dim Box As Shape Set Box = ActiveDocument.Shapes.AddTextbox( _ Orientation:=msoTextOrie

我对这个完全陌生。我想创建一个宏,将文件路径(在宏运行时)添加到文档末尾的文本框中。我用Word 2016表示Mac

我在其他线程上找到了代码,这些代码帮助我理解如何创建文本框并确定其在文档中的位置,但我无法添加文件路径代码

这就是我到目前为止的想法:

    Sub percorsofile2()
    Dim Box As Shape
    Set Box = ActiveDocument.Shapes.AddTextbox( _
    Orientation:=msoTextOrientationHorizontal, _
    Left:=50, Top:=50, Width:=100, Height:=15)
    Box.TextFrame.TextRange: Selection.Fields.Add Range:=Selection.Range, 
    Type:=wdFieldEmpty, Text:="FILENAME \p "

你很接近!只要一点零钱

所选内容不在文本框中,这就是字段代码未插入正确位置的原因。虽然可以先选择文本框范围,但通常最好直接使用
范围
对象,而不是选择

我的示例代码声明了一个
Range
对象,然后将其设置为
Box.TextFrame.TextRange
。然后可以在此位置插入字段代码

Sub percorsofile2()
    Dim Box As Shape
    Dim rng As Word.Range

    Set Box = ActiveDocument.shapes.AddTextbox( _
              Orientation:=msoTextOrientationHorizontal, _
              Left:=50, Top:=50, width:=100, height:=15)
    Set rng = Box.TextFrame.TextRange
    rng.Fields.Add Range:=rng, Type:=wdFieldEmpty, Text:="FILENAME \p " 
End Sub