程序调用Excel组件时报错-2147024703 Automation error %1 is not a valid Win32 > application或者-2147024894

程序代码中调用excel 使用方法CreateObject(“EXCEL.Application”)或者引用方法.在有些机器虽然安装excel但可能还会报错,-2147024703 Automation或-2147024894
  
  这种情况,可以检查一下注册表EXCEL.Application对象对应的clsid;v00024500-0000-0000-C000-000000000046 在注册表搜索这个clsid即可,32位和64位的操作系统有一点差别,64位多了Wow6432Node这个项
我的64位系统是这样的HKEY_CLASSES_ROOT\Wow6432Node\CLSID{00024500-0000-0000-C000-000000000046这个项下面有LocalServer和LocalServer32这两个子项下的默认值.它应该是指向excel程序所在的全路径,两个都修改正确就可以了.

你只要把它的值复制到"运行"中,运行一下,如果excel程序正常启动了,就说明他是正确的. 如果你的机器是标题提示的那样错误信息,这时excel不会正常启动.但你会发现这个路径可能是完全正确的,你要注意的是这个路径是长文件名格式,这里需要我们把它变成短文件名格式也就是就是 8.3 的文件格式路径就可以了.
  
  我这里是这样的
  C:\Program Files\office2016\Office16\EXCEL.EXE /automation
  改成
  C:\PROGRA~1\office2016\Office16\EXCEL.EXE /automation
  
  修改后检查是否正确,只在"运行"中 运行一下能正常启动Excel就可以了,问题解决.
  (注: 8.3格式的第7 i和8位字符,分别是1,但第8位,不一定是1,也可能是23,这要看你文件夹名称前6位相同的有多少,这时你要使用命令行的方式确认一下就可以了)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值