繁体   English   中英

在Word中查找并替换多个单词

[英]Find and replace multiple words in Word

我真的希望你们能提供帮助,我觉得我一直在努力解决(应该是)一个非常简单的问题。 我编写了一个应用程序,它创建一个文件夹结构,根据用户输入在相关的测试文档中进行复制,并使用各种变量填充文档标题和测试表。 我已经用占位符(“ replCustNo”,“ replPrjNo”,“ replCustRef”等)填充了模板测试文档,其中一些位于标头中,一些位于文档正文中。 我似乎一次只能替换一个单词,找不到一种列出所有要查找的引用,然后列出所有替换变量的方法。 似乎是一种非常笨拙的编码方式,可以一遍又一遍地进行查找/替换,或为其调用一个子项。

如果这真的很基础,请原谅我,我是编码的新手,非常感谢您的帮助! 我正在使用VB和Office 365

 Dim objWordApp As New Word.Application
    'Open an existing document.  
    Dim objDoc As Word.Document = objWordApp.Documents.Open(projFolder & "SAT\2 HV Tests\Flash.doc")

    objWordApp.ActiveDocument.Sections(1).Headers(1).Range.Select()
    objWordApp.Selection.WholeStory()
    With objWordApp.Selection.Find
        .Text = "replPrjNo"
        .Replacement.Text = RefNo
        .Forward = True
    End With
    objWordApp.Selection.Find.Execute(Replace:=Word.WdReplace.wdReplaceAll)

    'Save and close the document  
    objDoc.Save()
    objDoc.Close()
    objDoc = Nothing
    objWordApp.Quit()
    objWordApp = Nothing

一种解决方案是使用文档变量。 在模板文档中选择一个占位符,然后选择“ Insert tab > Quick Parts > Field... > DocVariable > New name: replPrjNo

然后在代码中:

objDoc.Variables("replPrjNo").Value = RefNo
objDoc.Fields.Update

其他解决方案可以是书签,自定义文档属性,邮件合并或“开发人员”选项卡中的某些控件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM