0

我在 lotusscript 中编辑一些代码以使用 OLE 从模板创建一个 word 文档,并且正在执行查找和替换以添加图像。这适用于第一张图像,但不适用于第二张图像。

objWord.Selection.Find.Execute "{{image1}}",False, True,,,,, 1,,,,,,,
objWord.Selection.Extend
If (objWord.Selection.Characters.Count > 1) Then
    If (signaturefilename = "") Then
        objWord.Selection.Find.Execute "{{image1}}", False, True,,,,, 1,, " ", 2,,,,        
    Else
        Call objWord.Selection.InlineShapes.AddPicture(tempdir + "\" + imagefilename, False, True,)     
    End If
End If

objWord.Selection.Find.Execute "{{image2}}",False, True,,,,, 1,,,,,,,
objWord.Selection.Extend
If (objWord.Selection.Characters.Count > 1) Then
    If (signaturefilename = "") Then
        objWord.Selection.Find.Execute "{{image2}}", False, True,,,,, 1,, " ", 2,,,,        
    Else
        Call objWord.Selection.InlineShapes.AddPicture(tempdir + "\" + imagefilename, False, True,)     
    End If
End If

第一段代码完美运行,但第二段并没有像我预期的那样用图像替换第二段文本。

我原以为第二个 Find.Execute 会找到第二个文本块,但它最终会替换文档中的所有文本。

有什么明显的我忽略了吗?

谢谢,

一种

4

1 回答 1

0

好的 - 解决了。它是:

objWord.Selection.Extend

需要删除。尽管第一次没有选择整个文档,但第二次却选择了。这现在完美无缺。感谢理查德的指针。

此外,我使用了:

objWord.Visible = True

协助调试。

于 2013-03-05T01:48:13.133 回答