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

本人初学vba,以下代码是从程序中截取的,程序要求在不关闭情况下可多次运行,但是在第二次运行时就出现462错误提示:远程服务器不存在或不能使用,烦请高人指点。谢谢!Pri... 本人初学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
展开
 我来答
xyz74sc
2014-08-12 · TA获得超过1412个赞
知道小有建树答主
回答量:1042
采纳率:33%
帮助的人:772万
展开全部
关闭word后,ole服务器对象就一同关闭了,所以会出现这样的错误提示。注意,再次打开的word,对用户来说看不出区别,但ole服务进程不一样,程序是不认可的。
lwt574635409
2020-07-09
知道答主
回答量:2
采纳率:0%
帮助的人:1156
展开全部
先做个批处理,结束word进程的,把 代码 "Word对象.Quit" 注释掉,问题就没了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式