0

我有一个控制字段,可以在其中动态添加某些文本。到目前为止效果很好。问题是在一个文本中我有一个输入字段,用户可以在其中输入文本。

我需要将表单文本输入字段硬编码到 VBA 代码中。这是如何实现的?或者有人可以指出我正确的方向吗?

在以下代码片段中,我需要将 替换[InputField]为 VBA 输入字段。

ActiveDocument.SelectContentControlsByTitle("Bottom").Item(1).Range.Text = _
"Some Text" & vbNewLine & _
"Some Text" & vbNewLine & _
"Some Text" & vbNewLine & _
"Text [InputField] Text"
4

1 回答 1

1

我不确定您所说的 VBA 输入字段是什么意思。我想你的意思是“表单输入字段”?如果是这样,那可能是您问题的解决方案:

Sub TestInsertContentControl()
    Dim m_objRange                      As Range
    Dim m_objRangeInsertTextInput       As Range
    Dim m_objFormField                  As FormField

    Set m_objRange = ActiveDocument.SelectContentControlsByTitle("Bottom").Item(1).Range
    m_objRange.Text = "Some Text" & vbNewLine & _
    "Some Text" & vbNewLine & _
    "Some Text" & vbNewLine & _
    "Text  "

    Set m_objRangeInsertTextInput = m_objRange
    m_objRangeInsertTextInput.Start = m_objRange.End - 1
    m_objRangeInsertTextInput.End = m_objRange.End

    Set m_objFormField = m_objRangeInsertTextInput.FormFields.Add(Range:=m_objRange, Type:=wdFieldFormTextInput)

    m_objRangeInsertTextInput.Start = m_objFormField.Range.End
    m_objRangeInsertTextInput.End = m_objFormField.Range.End
    m_objRangeInsertTextInput.Text = " Some more Text"
End Sub
于 2012-09-29T15:09:10.937 回答