excel – 当某些值有逗号时创建数据验证列表?

我正在使用以下方法创建数据验证列表:

sDataValidationList = sDataValidationList & wksCalculation.Cells(r, lActivityNoColumn).value & ","

然后我使用以下方法将其应用于单元格:

.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:=s

这在大多数情况下运行良好,但是当任何wksCalculation.Cells(r,lActivityNoColumn).value包含逗号时,那些字符串将被数据验证列表拆分,并且字符串的每个逗号分隔部分将显示为单独的项目.

当进入数据验证列表的某些值中包含逗号时,如何修改我的代码才有用?

在使用Type:= xlValidateList进行数据验证时,Formula1可以是逗号分隔列表,也可以是公式字符串,它是对具有该列表的范围的引用.在逗号分隔的列表中,逗号具有特殊含义.在参考范围时它没有.

所以假设你的列表,你从wksCalculation.Cells(r,lActivityNoColumn)连接,是在Sheet2!A1:A5然后

.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:="=Sheet2!A1:A5"

将工作.

.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:="=" & wksCalculation.Range("A1:A5").Address(External:=True)

也应该工作.

https://stackoverflow.com/questions/30724178/create-data-validation-list-when-some-of-the-values-have-commas

转载注明原文:excel – 当某些值有逗号时创建数据验证列表?