【问题标题】:Excel VBA Compiler Constants: Mac Excel 2011 <> VBA7?Excel VBA 编译器常量:Mac Excel 2011 <> VBA7?
【发布时间】:2015-01-26 18:40:27
【问题描述】:

我无法为 Macintosh 运行 Excel,但由于 Excel (for Windows) 2010 引入了 Excel VBA 编译器常量 VBA7,我认为它也适用于 Mac Excel 2011。

但是,当在 Mac Excel 2011 上运行时,此代码显然会编译“Else”部分(用于 Excel 2007):

#If VBA7 Then 
    'Set constants here for Excel 2010 or later:
#Else
    'Set constants here for Excel 2007 or earlier:
#End If

因此,要使其适用于使用 Mac Excel 2011 的用户,我必须将其更改为:

#If VBA7 Or Mac Then 
    'Set constants here for Excel for Windows 2010 or later, or Excel for Mac:
#Else
    'Set constants here for Excel for Windows 2007 or earlier:
#End If

Mac Excel 2011 真的没有 VBA7,还是只是编译器常量中的一个遗漏?

【问题讨论】:

    标签: excel vba macos


    【解决方案1】:

    Excel for Mac 仍然使用 VBA 6.5,因此不存在 VBA7 常量。从 v15.11 (150609) 开始,Excel Mac 2016 仍然是这种情况。

    如果您真的想区分主机 Excel 应用程序版本,那么您应该使用Application.Version

    地点:

    5 = Excel 5
    6 = Excel 6
    7 = Excel 95
    8 = Excel 97
    9 = Excel 2000
    10 = Excel 2002
    11 = Excel 2003
    12 = Excel 2007
    14 = Excel 2010 and Excel Mac 2011
    15 = Excel 2013 and Excel Mac 2016
    

    如果你想要 VBA 环境版本你可以使用:-

    Application.VBE.Version
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-29
      • 1970-01-01
      • 2013-08-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多