1

我有以下 VBA 代码:

myList = "test"

Range("A1:Z1").Validation.Delete
Range("A1:Z1").Validation.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Formula1:=myList

如果我的列表超过 256 个字符,则会被截断。如果超过 1024,我会收到执行错误(我认为这是公式的最大长度)。

我怎样才能克服这些限制?我正在使用 Excel 2003。

4

1 回答 1

2

使用上面评论中发布的链接,我能够创建一个包含超过 256/1024 个字符的下拉列表。这是我经过更多搜索和尝试后得到的结果:

ActiveWorkbook.Names.Add Name:="List", RefersTo:="=ValidationList!$A$1:$A$" & i
Range("A1:AZ1").Validation.Delete
Range("A1:AZ1").Validation.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:="=List"

仅此而已。iValidationList表的行数。我正在动态创建该工作表并使用我想要在下拉列表中显示的内容填充第一个 A 列。

有用的参考资料:

于 2013-04-15T17:30:30.043 回答