Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么赢了';t Excel VBA赢得';无法在Word文档中查找和替换_Excel_Vba_Ms Word - Fatal编程技术网

为什么赢了';t Excel VBA赢得';无法在Word文档中查找和替换

为什么赢了';t Excel VBA赢得';无法在Word文档中查找和替换,excel,vba,ms-word,Excel,Vba,Ms Word,我是VBA新手,尝试用Excel中的VBA从Excel填写word模板。我使用以下代码将日期放入word文档中的标记中: 将模板设置为字符串 Dim WordDoc, WordApp As Object Dim Template as String On Error Resume Next Set WordApp = GetObject("Word.Application")

我是VBA新手,尝试用Excel中的VBA从Excel填写word模板。我使用以下代码将日期放入word文档中的标记中: 将模板设置为字符串

Dim WordDoc, WordApp As Object
Dim Template as String
On Error Resume Next                                                      
Set WordApp = GetObject("Word.Application")                                 
If Err.Number <> 0 Then                                                     
    Err.Clear                                                               
    Set WordApp = CreateObject("Word.Application")                          
    WordApp.Visible = True                                                  
End If
Template = "C:\Users\me\Dropbox\me - Summer 2019\RMA_Log\00059-001_E_24May19_Form Returned Authorization.docx"
Set WordDoc = WordApp.Documents.Open(FileName:=Template, ReadOnly:=False)
With WordDoc.Content.Find                                                   
    .Text = "<Date>"                                                        
    .Replacement.Text = "06-06-2019"                                        
    .Execute Replace:=wdReplaceAll, Forward:=True, Wrap:=wdFindContinue                                     
End With
如果我在Word VBA中运行此代码,它将替换标记,为什么从Excel运行此代码不起作用


编辑:Office 2016

Excel不知道
wdReplaceAll
wdFindContinue
是什么

放置对Word对象模型的引用(
Tools>References>MicrosoftWord XX对象模型


如果您的代码顶部有
选项Explicit
,它会突出显示这一点。

正是我现在期望的效果,非常感谢!
Dim Template As String
Template = "C:\Users\me\Dropbox\me - Summer 2019\RMA_Log\00059-001_E_24May19_Form Returned Authorization.docx"

With ActiveDocument.Content.Find                                                   
    .Text = "<Date>"                                                        
    .Replacement.Text = "06-06-2019"                                        
    .Execute Replace:=wdReplaceAll, Forward:=True, Wrap:=wdFindContinue                                     
End With