VBA Word 搜索一行并替换其中的一部分

VBA Word searching for a line and replacing part of it

我必须快速为我的同事编写一些程序,并且我在下面卡住了一段时间。目标是使用来自 MS Excel 的数据来填充 MS Word 模板。这是最新的,我有问题。
MS Word模板如下:

我们的想法是在左列(例如 Organism)上进行搜索,获取该行并将右列(单击此处输入文本)替换为来自 MS Excel 的相应值。但我是 VBA 的新手,我不确定如何正确编程。我目前的代码是这个,它找到正确的左字符串,并将其替换为字符串 + MS Excel 值,但不在右列中替换。

Sub SearchAndReplace(inputKey As String, inputVar As String)
With Selection.Find
  .Text = inputKey
  .Replacement.Text = inputVar
  .Execute Replace:=wdReplaceOne, Forward:=True, _
  Wrap:=wdFindStop
End With    
End Sub

非常感谢您的帮助。如果有什么不清楚,请随时询问。 提前谢谢你。

您发布的屏幕截图没有明确说明项目是否在 table 中,但确实显示有内容控件。

如果您已经使用标题 and/or 标签正确设置了内容控件,那么您可以使用如下内容:

Sub AddTextToContentControl(targetDoc As Document, ccTitle As String, textToAdd As String)
  Dim ctrl As ContentControl
  Set ctrl = targetDoc.SelectContentControlsByTitle(ccTitle).Item(1)
  ctrl.Range.Text = textToAdd
End Sub

Sub AddTextToContentControlByTag(targetDoc As Document, ccTag As String, textToAdd As String)
  Dim ctrl As ContentControl
  Set ctrl = targetDoc.SelectContentControlsByTag(ccTag).Item(1)
  ctrl.Range.Text = textToAdd
End Sub