在文本框中插入符号VBA Word

时间:2016-03-12 14:10:26

标签: vba ms-word word-vba

我有以下代码将文本框插入到word文档中:

Sub mark()
    Dim Box As Shape
    Set Box = ActiveDocument.Shapes.AddTextbox( _
        Orientation:=msoTextOrientationHorizontal, _
        Left:=20, Top:=20, Width:=20, Height:=20)
        Box.TextFrame.TextRange.Text = "tick"
End Sub

texbox中的文字需要是:

Selection.InsertSymbol Font:="Wingdings", CharacterNumber:=-3844, Unicode :=True

1 个答案:

答案 0 :(得分:1)

我看到您已找到答案,但使用您找到的方法有更优化的方法。由于无法在评论中很好地格式化代码,因此我会在答案空间中为您(以及可能有相同问题的其他人)编写代码。此外,该网站更喜欢有用的信息在"答案"因为评论往往被忽视或删除......

要从“插入符号”对话框中插入内容,请使用InsertSymbol方法,该方法适用于Range或“选择”对象。

使用Range对象始终是首选方法。为了获得文本框内容的Range对象,请调整代码,如下所示:

Sub mark()
  Dim Box as Word.Shape
  Dim rngBox as Word.Range
  Set Box = ActiveDocument.Shapes.AddTextBox( _
            Orientation:=msoTextOrientationHorizontal, _
            Left:=20, Top:=20, Width:=20, Height:=20,  _
  Set rngBox = Box.TextFrame.TextRange
  rngBox.Text = "tick"
  rngBox.Collapse wdCollapseEnd 'focus at end of Range
  rngBox.InsertSymbol Font:="Wingdings", CharacterNumber:=-3844, Unicode:=True
End Sub

Collapse方法允许您根据需要继续添加文字(可选择格式化)...