我在 Word 2007 中创建了一个 VBA 宏,它确定 Excel 和特定的 Excel 工作簿是否打开,打开该工作簿(如果需要,还打开 Excel),然后在工作簿中执行各种任务。
在“工具/参考”下,我检查了 Microsoft Word 12.0 对象库、Microsoft Office 12.0 对象库和 Microsoft Excel 12.0 对象库。宏运行得很好。最近我换了一台新电脑和 Office 2010,下面的命令都没有产生结果 - appExcel 仍然没有任何结果。
Set appExcel = GetObject(, "Excel.Application")
Set appExcel = CreateObject("Excel.Application")
我到处寻找关于如何解决此问题的具体信息,但无济于事。我发现各种信息都表明 2007 和 2010 dll 都已注册,或者必要的 dll 未注册,但我找不到有关如何注册或取消注册的说明。我也找不到所涉及的文件名。我希望 Stack Exchange 中的某个人可以提供帮助!
答案1
Dim excelapp As Object
Set excelapp = CreateObject("Excel.Application")
就是您要找的。如果您没有看到,请使用excelapp.visible = true
。
答案2
尽管Raystafarian 建议的修复方法有帮助,完整的解决方案包括删除以下注册表项:
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\TypeLib{00020813-0000-0000-C000-000000000046}\1.8
我现在是一个非常快乐的露营者。
答案3
修复API引用如下:
- 在 Excel 中按Alt+F11转到编码窗口
- 打开工具菜单并选择参考
- 取消
Missing:
选中列表中的项目 - 向下滚动并添加对新版本 Microsoft Word 的引用。