You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

后台打开Excel报错&h800706BE,新用户异常旧用户正常如何解决?

问题描述

旧用户登录电脑时,以下VBA代码可正常运行;但新创建的用户登录时,代码在后台打开工作簿环节中断,报错信息如下:

System error &h800706BE (-2147023170). Remote procedure call failed.

若在打开工作簿前设置AppExcel.Visible=True,新用户可正常运行代码,旧用户则始终无异常。

涉及代码:

Private Sub UserForm_Initialize()

Set AppExcel = New Excel.Application
AppExcel.ScreenUpdating = False
AppExcel.Workbooks.Open "Q:\Registro de Desenhos.xls", ReadOnly:=True

End Sub
修复方案

1. 配置新用户的DCOM权限

该RPC错误多与后台Excel实例的组件服务权限有关,需为新用户补充权限:

  • 按下Win+R输入dcomcnfg打开组件服务
  • 依次展开:组件服务 → 计算机 → 我的电脑 → DCOM配置
  • 找到Microsoft Excel Application,右键选择属性
  • 在安全选项卡:
    • 「启动和激活权限」选择自定义,点击编辑,添加新用户并授予本地启动、本地激活权限
    • 「访问权限」选择自定义,点击编辑,添加新用户并授予本地访问权限
  • 切换到标识选项卡,选择交互式用户,确定后重启电脑测试

2. 优化后台Excel实例初始化逻辑

新用户的Excel配置可能未完成初始化,可通过先显再隐的方式触发实例加载:

Private Sub UserForm_Initialize()
    Dim AppExcel As Excel.Application
    Set AppExcel = New Excel.Application
    
    ' 先触发实例初始化再隐藏
    AppExcel.Visible = True
    AppExcel.WindowState = xlMinimized
    AppExcel.Visible = False
    AppExcel.ScreenUpdating = False
    
    ' 打开工作簿时添加参数避免交互
    AppExcel.Workbooks.Open _
        Filename:="Q:\Registro de Desenhos.xls", _
        ReadOnly:=True, _
        IgnoreReadOnlyRecommended:=True, _
        Notify:=False
End Sub

3. 验证新用户的共享文件夹权限

确认新用户对Q:\Registro de Desenhos.xls所在共享路径有足够权限:

  • 右键目标文件,选择属性 → 安全选项卡
  • 检查新用户是否已被添加,且拥有读取、读取及执行权限
  • 注意共享权限与NTFS权限取严格值,需确保两者均满足读取要求

4. 重置新用户的Excel配置文件

新用户的Excel配置可能损坏,可尝试重置:

  • 关闭所有Excel进程
  • 按下Win+R输入excel /safe启动安全模式,确认能正常打开目标文件
  • 若安全模式正常,删除新用户下的Excel配置文件:
    • 路径:C:\Users\[新用户名]\AppData\Roaming\Microsoft\Excel
    • 删除Excel16.xlb(对应Excel版本的配置文件),重启Excel后测试

内容的提问来源于stack exchange,提问作者William

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 20:45:57