Office2010升级至2013后Essbase Excel插件问题及ActiveMenuBar.Reset替代方案
我来帮你梳理解决思路,毕竟这个加载项是Oracle早在2013年就终止支持的老版本,和Office2013兼容性拉胯是正常的,咱们一步步来:
一、搞定加载项焦点跳转和启动冻结的问题
1. 彻底改掉自动加载的习惯
既然随Excel启动直接冻住,那先把自动加载关死,改成用的时候再手动开:
- 打开Excel,点「文件>选项>加载项」
- 「管理」下拉选「Excel加载项」,点「转到」
- 把
essexcln.xll的勾选去掉,确定保存 - 要用的时候再重复上面的步骤勾上,用完就取消,别让它在后台瞎搞,能避免多窗口焦点乱跑的问题
2. 用兼容模式跑Excel
给Excel套个Office2010的兼容壳,能缓解老加载项的兼容性冲突:
- 右键Excel快捷方式,选「属性」
- 切到「兼容性」标签,勾选「以兼容模式运行这个程序」,下拉选「Microsoft Office 2010」
- 顺便勾上「以管理员身份运行此程序」,确定后重启Excel试试
3. 改注册表调整加载行为(新手慎操作)
老加载项可能在注册表留了不兼容的自动加载配置,手动改一下:
- 按
Win+R输regedit开注册表编辑器 - 找路径:
HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\Excel\Add-ins - 找到对应
essexcln.xll的项,把LoadBehavior的值从3(自动加载)改成2(按需加载) - 注意:改注册表前一定要备份,瞎改可能搞坏Excel
二、ActiveMenuBar.Reset的替代方案
Office2013之后把旧的菜单栏换成了Ribbon界面,ActiveMenuBar.Reset早就没用了,给你两个替代方案:
1. 重置整个Ribbon界面到默认状态
如果是要恢复Excel的默认功能区,用这段VBA代码就行:
Sub ResetRibbon() Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)" Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",True)" End Sub
原理就是先把Ribbon隐藏再显示,和旧版重置菜单栏的效果差不多,直接在VBA编辑器里运行就行
2. 重置加载项的自定义菜单
如果是要重置Essbase加载项加的自定义菜单,最简单的办法就是先卸载加载项再重新加载:
- 取消加载项的勾选,关掉所有Excel窗口
- 重新打开Excel,再手动加载加载项,此时自定义菜单会重新生成,相当于重置了
内容的提问来源于stack exchange,提问作者anon
相关产品推荐
相关产品推荐

