无法在Mac上的VBA下拉列表中设置ControlFormat.Value

时间:2015-11-09 19:24:57

标签: excel vba excel-vba excel-vba-mac

我在Excel中制作了一个导航系统,在VBA中使用了两个相互关联的下拉框(表单控件)。首先是主要类别(Drop Down 186),第二个是该主要类别中的子类别。(下拉187)

当我选择主类别(186)时,我将子类别(187)重置为列出项目#1,使用:

Sheets("Equipment").Shapes("Drop Down 187").ControlFormat.Value = 1

这在PC上工作正常,但在Excel 2016中出现1004错误,消息为"无法设置DropDown类的Value属性。

有什么想法吗?很确定这在Excel 2011上运行良好。

1 个答案:

答案 0 :(得分:0)

编辑: 好的,所以我在下面撒了谎。我上面的回答修复了Excel for Mac 2011中发生的另一次崩溃,但我们仍然在2016年遇到崩溃。任何人都有任何想法?

Siddharth,我尝试将Sheets更改为Worksheets,但得到了同样的错误。谢谢你的想法。

好的,我想出来了。启动文件时,默认情况下不会填充下拉框。 Mac Excel有一种奇怪的方式来显示和使用下拉框,这要求用户单击并按住下拉框中的箭头以选择列表项。如果只是单击它,则不会选择任何列表项,但关联的宏仍会运行。并且因为没有要处理的变量而抛出错误。所以我在启动时填充了下拉框。这不是Windows中的问题,因为没有办法做到这一点。为了记录,从事情看来,Excel 2016在按钮等方面看起来比2011年更好。 谢谢,    乔尔