Excel组合框限制列表

时间:2015-08-24 15:42:52

标签: excel excel-vba drop-down-menu combobox vba

我有一个涉及组合框的项目。每天的每个小时都有一个记录,每个记录都有一个用于列出相关问题代码的组合框。如果在任何给定时间内存在多个问题,则用户可以单击复选框以添加其他行,包括其他组合框。我想确保所有的组合框都限于列表;我可以通过将样式属性更改为Style 2-frmstyledropdownlist而不是默认的0-frmstyledropdowncombo来为现有的24条记录设置。但我无法弄清楚如何为代码创建的附加组合框执行此操作。

这是使用的代码:

    'To add combobox for problems
Set x = ActiveSheet.OLEObjects.Add(ClassType:="Forms.ComboBox.1")
x.Name = cmboxName1
x.Height = Rows(rowOffset).Height
x.Width = Columns("G").Width
x.Left = Columns("G").Left
x.Top = Rows(rowOffset).Top
x.Object.Font.Size = 10

有一些For..Next语句来填充Comboboxes,除了将它们限制在列表之外,一切正常。有人有什么想法?提前谢谢!

1 个答案:

答案 0 :(得分:0)

您有两个选择。

要让用户输入文本,不仅限于组合框列表:

string memory

要将用户限制在ComboBox的列表中:

x.style = fmStyleDropDownCombo

请注意,x.style = fmStyleDropDownList 的值为fmStyleDropDownCombo,而0的值为fmStyleDropDownList