excel中vba调用word第二次运行时就出现462错误提示:远程服务器不存在或不能使用

本人初学vba,以下代码是从程序中截取的,程序要求在不关闭情况下可多次运行,但是在第二次运行时就出现462错误提示:远程服务器不存在或不能使用,烦请高人指点。谢谢!
Private Sub CommandButton1_Click()
Dim Word对象 As New Word.Application, 当前路径, 输出路径, 导出文件名, 导出路径文件名, i, j
Dim Str1, Str2
With Application.FileDialog(msoFileDialogFolderPicker)
.InitialFileName = ThisWorkbook.Path & "\"
If .Show = False Then Exit Sub
输出路径 = .SelectedItems(1) & "\"
End With

当前路径 = ThisWorkbook.Path
最后行号 = Sheets("数据").Range("B65536").End(xlUp).Row
最后列号 = Sheets("数据").Range("IV1").End(xlToLeft).Column
判断 = 0
For i = 3 To 最后行号
导出文件名 = "项目模板"
FileCopy 当前路径 & "\项目模板.docx", 输出路径 & "\" & "项目" & "-" & Sheets("数据").Range("A" & i) & "说明书" & ".docx" '将文件先拷贝到当前路径后再做替换
导出路径文件名 = 输出路径 & "\" & "项目" & "-" & Sheets("数据").Range("A" & i) & "说明书" & ".docx" '引用一个表格单元格值作输出文件名称
With Word对象
.Documents.Open 导出路径文件名
.Visible = False
For j = 1 To 最后列号
Str1 = "[数据" & Format(j, "00") & "]"
Str2 = Sheets("数据").Cells(i, j)
.Selection.HomeKey Unit:=wdStory
If .Selection.Find.Execute(Str1) Then
.Selection.Font.Color = wdColorAutomatic
.Selection.Text = Str2
End If
For n = 1 To 3
.Selection.HomeKey Unit:=wdStory
If .Selection.Find.Execute(Str1) Then
.Selection.Font.Color = wdColorAutomatic
.Selection.Text = Str2
End If
Next
Next j
End With
Word对象.Documents.Save
Word对象.Quit
Set Word对象 = Nothing
Next i
If 判断 = 0 Then
i = MsgBox("已输出到 Word 文件!", 0 + 48 + 256 + 0, "提示:")
End If
End Sub

关闭word后,ole服务器对象就一同关闭了,所以会出现这样的错误提示。注意,再次打开的word,对用户来说看不出区别,但ole服务进程不一样,程序是不认可的。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-07-09
先做个批处理,结束word进程的,把 代码 "Word对象.Quit" 注释掉,问题就没了