Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.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
excel中的word替换宏不起作用_Excel_Vba_Replace_Ms Word - Fatal编程技术网

excel中的word替换宏不起作用

excel中的word替换宏不起作用,excel,vba,replace,ms-word,Excel,Vba,Replace,Ms Word,我正在尝试将Excel结果输入到预先制作的Word文档中。 我想为此使用宏。我对代码编写游戏相当陌生,但我了解基本知识。 我试图从不同的课程中复制,但没有一门是有效的 这个简单的宏应该将'x1'更改为'anything', 但它为我做的只是打开文档并在文档中选择x1 有人知道我哪里出错了吗 Private Sub CommandButton1_Click() Set wrdApp = CreateObject("Word.Application") wrdApp.Visible

我正在尝试将Excel结果输入到预先制作的Word文档中。 我想为此使用宏。我对代码编写游戏相当陌生,但我了解基本知识。 我试图从不同的课程中复制,但没有一门是有效的

这个简单的宏应该将'x1'更改为'anything', 但它为我做的只是打开文档并在文档中选择x1

有人知道我哪里出错了吗

Private Sub CommandButton1_Click()
    Set wrdApp = CreateObject("Word.Application")
    wrdApp.Visible = True
    Set wrdDoc = wrdApp.Documents.Open("C:\Users\mycomputer\Documents\PremadeDocument.docx")

        wrdApp.Selection.Find.ClearFormatting
        wrdApp.Selection.Find.Replacement.ClearFormatting
    With wrdApp.Selection.Find
        .Text = "x1"
        .Replacement.Text = "anything"
    '    .Forward = True
        .Wrap = wdFindContinue
    '    .Format = False
    '    .MatchCase = False
    '    .MatchWholeWord = False
    '    .MatchWildcards = False
    '    .MatchSoundsLike = False
    '    .MatchAllWordForms = False
    End With
        wrdApp.Selection.Find.Execute Replace:=wdReplaceAll

    Set wrdDoc = Nothing
    Set wrdApp = Nothing
End Sub
为wdReplaceAll添加值

Const wdReplaceAll = 2 
在宏定义之后

Private Sub CommandButton1_Click()
Const wdReplaceAll = 2

不确定,但会是wrdDoc.selection等而不是wrdApp吗?