Excel 2007组合框 - 开发人员功能区与VBA模块

问题描述:

是否有人可以向我解释通过Excel 2007中的开发人员功能区与VBA编辑器中的组合框控件可用的组合框之间的区别?我不能让这个代码简单的线条使用开发人员组合框的工作:Excel 2007组合框 - 开发人员功能区与VBA模块

MSGBOX Combo1.Value

我已经把它系chan​​ge事件,它似乎是语法正确的(我不是一个VBA编码器的任何延伸)。

开发者功能区版本是一些混蛋的微软快捷方式吗?

我想要做的是根据第一个组合框的选择填充第二个组合框。我宁愿不为每个可能的选择建立一个案例声明。这可以使用开发人员功能区版本吗?

+0

在代码中停下来,然后在Combo1上放一个'手表',看看你看到了什么。 – 2009-12-21 18:11:07

+0

这里设置我的整个代码Change事件: 子CB_Entity_Change() MSGBOX CB_Entity.Value 结束小组 加入终止不会改变失败点 - 它只是用了同样的错误停止,因为我我只是评估一条线。 – jhc 2009-12-21 18:26:03

您正在讨论Developer选项卡上的Insert按钮是否正确?从该按钮可以添加一个ActiveX控件或表单控件。如果您是编程新手,那么您最好使用表单控件,因为它们的行为更符合您完成的任何Excel VBA阅读和帮助文件。使用表单控件,您可以右键单击并选择“查看代码”和/或“重命名控制和代码”。重命名控件可以让你在VBA中处理它,只要你喜欢。例如 - Combo1.value或myFavoriteCombo.value

这就是说,要直接回答你的问题,一定要知道控件的全名。如果你使用了表单控件,并且它是第一张表单,它将被命名为Combo Box 1.要获得组合框的属性,必须通过它的“父”表单。


MSGBOX Sheet1.ComboBox1.value(使用片材的代号)

MSGBOX工作表( “SHEETNAME”)。ComboBox1.value(使用,因为它出现了Excel标签上的片材名称)

+0

是的,我用那个按钮来插入我的组合框。显然我选择了Form Control版本。为什么两者之间有限制?这个比那个好吗?有没有办法让我链接两个基于表单的组合框,以便我在第一个选择框中进行的选择默认选择另一个? – jhc 2009-12-21 18:50:09

+1

我发布的代码应该修复您遇到的错误。如果是这样,请点击绿色复选框将其标记为答案。以下是Excel中窗体与ActiveX控件之间差异的一个体面解释。 http://peltiertech.com/WordPress/forms-controls-and-activex-controls-in-excel/至于你的其他问题,谷歌是你的朋友。如果使用搜索找不到答案,请将另一个帖子发布到StackOverflow。 – GollyJer 2009-12-21 23:26:00

+0

谢谢GollyJer。感谢帮助。 – jhc 2009-12-22 13:22:50