"ActiveX component can't create object" Excel 中的错误

"ActiveX component can't create object" Error in Excel

当我 运行 下面的代码时,我在标题中的指示行中收到错误。我查看了 Whosebug 和其他地方,但找不到任何有用的帮助。有什么指点吗?

这段代码在 2 天前在 Windows 10 和 Mac OSX 中都运行良好,然后我遇到了另一个 (non-VBA) 问题和 Microsoft Tech支持代表重新安装了 Office 365 以尝试修复它。现在,我得到相同的 Excel 对话框: "ActiveX component can't create object" 每当我尝试 运行 这个简单的子时,在 Windows 10 和 Mac OSX .

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 文档的子例程。

当我在这些对话框中单击 "Help" 按钮时,出现的下一个对话框在 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 中正常工作。