Word VBA宏在部分电脑打开文件时报错,同款环境为何存在差异?
Word VBA宏间歇性报错5097/4605问题求助
公司内有一小部分(数量还在增加)用户运行完全相同的Word VBA宏时,会间歇性出现打开Word或TXT文件的运行时错误,报错信息为5097:Word遇到问题或4605:命令失败。所有用户使用相同版本的Windows系统,权限也一致(技术团队已确认),目标文件存储在共享网络驱动器中。
以下是出现错误的核心代码:
Public Function readData(datafile As String) As String 'datafile = "\\network\unc\path\folder\folder\data.txt" '已确认路径传递正确 Dim db As Document '提前说明:试过早绑定、晚绑定,也把变量声明为Variant、Object等,都没用 '错误出现在这一行 Set db = Documents.OpenNoRepairDialog(fileName:=datafile, ConfirmConversions:=False, _ ReadOnly:=True, Visible:=False) '试过用Documents.Open也没用,也调整过、移除过参数,结果都一样 '试过声明Word.Application对象并前置调用该方法,没用;也试过不把返回值赋值给对象,同样无效 '---剩余代码---' End Function
已做过的排查和尝试:
- 用
Debug.Print确认文件路径传递完全正确; - 问题和文件类型无关,注释掉这个读文件函数后,下一个打开Word文档的函数仍会报相同错误;
- 宏在部分工作站上运行完全正常;
- 所有用户都能在文件资源管理器中正常访问宏要打开的文件路径,在立即窗口运行
Documents.Open(datafile)或Dir(datafile)也完全正常,但宏运行时却报错; - 尝试过多种绑定方式、变量声明类型、不同的文件打开方法及参数调整,均未解决问题。
内容的提问来源于stack exchange,提问作者Nicole KC
相关产品推荐
相关产品推荐

