繁体   English   中英

Excel 中的“ActiveX 组件无法创建对象”错误

[英]“ActiveX component can't create object” Error in Excel

当我运行下面的代码时,我在标题中指示的行中收到错误。 我环顾了 StackOverflow 和其他地方,找不到任何有效的帮助。 任何指针?

两天前,此代码在 Windows 10 和 Mac OSX 中运行良好,然后我遇到了另一个(非 VBA)问题,Microsoft 技术支持代表重新安装了 Office 365 以尝试修复它。 现在,每当我尝试在 Windows 10 和 Mac OSX 上运行这个简单的子程序时,我都会得到同样的 Excel 对话框:“ActiveX 组件无法创建对象”。

Sub changeSheetsZoomLevel()
Dim n As Integer, sh As Worksheet
n = 0
For Each sh In ThisWorkbook.Worksheets ' **<-- error occurs here**
    With sh
        .Activate
        ActiveWindow.Zoom = 90
        .Columns("A:A").ColumnWidth = 100
        .Columns("B:B").ColumnWidth = 70
        .Cells.EntireRow.AutoFit
        n = n + 1
    End With
Next sh
MsgBox n & " sheets reformatted"
End Sub

我只展示了这一个子程序,但还有很多其他子程序,包括一些操作 Word 文档的子程序。

当我在这些对话框中单击“帮助”按钮时,出现的下一个对话框在 2 个操作系统上是不同的,如下所示。

在此处输入图像描述

我什至再次尝试了 Microsoft 支持,他们让我将 64 位 Office 安装到 Windows 而不是 32 位版本。 但这没有帮助。

尽管我查看了@MBB70 评论中建议的解决方案,但我发现这不是问题所在。 相反,这是对我有用的解决方案:

1) Make a new Excel workbook and
2) Transfer all vba code into it from my original workbook
3) Transfer all sheets into it from my original workbook
4) Add the needed reference in the VBA Editor using Tools-->References... as shown below:

在此处输入图像描述

新工作簿现在可以在 Mac OSX 和 Windows 10 中正常工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM