在Windows上正常运行的用于创建数据透视表的Excel宏,在Mac上无法运行。

3

我有一个宏,在Windows上运行良好,但在Mac上不行。

Mac上出现的错误是:

"Run time error '5'; Invalid procedure call or argument"

在Mac上标记的语句(下面的第一和第二个物理行实际上在同一行,第三和第四个物理行也是如此,因此不需要使用下划线):

ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, 
SourceData:=Selection.CurrentRegion.Address, Version:=6). _
    CreatePivotTable TableDestination:="", TableName:="PivotTable1", 
    DefaultVersion:=6

这句话在 Mac 上有没有不支持的内容?

Windows 环境:

  • 操作系统:Win 7 Professional
  • Excel:MS Office 365 ProPlus,版本为 1708

Mac 环境:

  • MacOS:版本为 10.13.3
  • Excel:版本为 15.33

如有必要,我可以发布整个宏。不过我想先看看在 Mac 版本的 Excel 中是否存在某些明显不支持的函数或对象。谢谢。


你确定版本6适用于Mac吗?如果尝试使用版本5会发生什么? - Ken White
谢谢 - 我们试过了,但不幸的是那没有帮助。 - Snake
1个回答

2

这个错误可能是由于您的项目中没有启用/禁用正确的引用所导致的。

进入 Visual Basic 部分,单击窗口左上角的“工具”,然后单击“引用”。删除所有 MISSING: 引用并重新运行。

注意:我对 VBA 还相当新,这是我修复完全相同的错误的方法,以及我从快速搜索错误中找到的内容。


谢谢 - 我们会检查参考文献部分并回报。 - Snake
需要注意的是,每当打开项目时,引用可以自动添加。如果您在Mac上打开项目,并在PC上打开同一项目,则任何保存可能会更改引用(尝试使用Office '07 Access和Office 2016 Access时已经看到过这种情况)。 - Jaskier

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接