通过VB替换Word中的字符串。仅适用于第一个字符串

时间:2012-10-19 08:29:58

标签: vba ms-word word-vba

我正在尝试使用Visual Basic,Visual Studio 2012替换Word .doc文件中的字符串。此代码适用于包含<<FileNumber>>的第一行。使其适用于其余部分的诀窍是什么?感谢。

    Dim oWord As Word.Application
    Dim oDoc As Word.Document

    oWord = CreateObject("Word.Application")

    oWord.Documents.Open(FileName:=System.AppDomain.CurrentDomain.BaseDirectory + "\" + txtReportFolder.Text + "\" + txtReportNumber.Text + "\Form A.doc")
    oWord.Documents("Form A.doc").Activate()
    oDoc = oWord.ActiveDocument
    Dim oRange = oDoc.Content
    oRange.Find.Execute(FindText:="<<FileNumber>>", ReplaceWith:=txtReportNumber.Text)
    oRange.Find.Execute(FindText:="<<OCode1>>", ReplaceWith:="488")
    oRange.Find.Execute(FindText:="<<Text>>", ReplaceWith:="Loss")
    oRange.Find.Execute(FindText:="<<EDP1>>", ReplaceWith:="16G2-M")

1 个答案:

答案 0 :(得分:0)

这对我有用。在所有执行之间添加:

oRange = oDoc.Content

我还会添加这些:

    oDoc.Save()
    oWord.Quit()