使用单个列表项创建LIST验证

时间:2018-03-27 14:00:36

标签: excel vba excel-vba

我需要一个Worksheet_Change事件来根据复杂的矩阵将数据验证设置为某些单元格。数据验证应该导致单元格下拉LIST项目!

当您录制宏并插入以分号分隔的列表项时,如此" alfa; β;伽马;增量"最终结果会很好,在选定的单元格中,每个项目都低于前一个项目。

您将获得以下代码(由Excel VBA完成):

With Selection.Validation
    .Delete
    .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
        xlBetween, Formula1:="alfa; beta; gamma; delta"
    .IgnoreBlank = True
    .InCellDropdown = True
    .InputTitle = ""
    .ErrorTitle = ""
    .InputMessage = ""
    .ErrorMessage = ""
    .ShowInput = True
    .ShowError = True
End With

但是当您在所选单元格中运行录制的宏时,您将在一行alfa; beta; gamma; delta

中获得所有项目

如何解决此问题?

我需要在下一个下面显示的项目!

1 个答案:

答案 0 :(得分:3)

VBA以英语为导向,因此您需要使用,

.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
        xlBetween, Formula1:="alfa, beta, gamma, delta"