Validation VBA excel代码:无法在验证中为公式1指定命名范围

Validation VBA excel代码:无法在验证中为公式1指定命名范围,validation,vba,excel,Validation,Vba,Excel,如何通过引用命名范围的vba代码添加验证列表? 这样列表将包含命名范围的值? 我可以像公式1那样做:=“=$A$1:$A$10”,但我如何才能给出一个命名范围?您可以使用以下代码: 'Create the named range (if not done already) ActiveWorkbook.Names.Add Name:="listdata", RefersTo:= "=Sheet2!$A$1:$A$10" 'Set a validation list on the cells t

如何通过引用命名范围的vba代码添加验证列表? 这样列表将包含命名范围的值?
我可以像公式1那样做:=“=$A$1:$A$10”,但我如何才能给出一个命名范围?

您可以使用以下代码:

'Create the named range (if not done already)
ActiveWorkbook.Names.Add Name:="listdata", RefersTo:= "=Sheet2!$A$1:$A$10" 
'Set a validation list on the cells that will refer to the named range
With Range("A1:A100") 
    With .Validation 
        .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ 
        xlBetween, Formula1:="=listdata" 
    End With 
End With

@米歇尔:如果这个答案适合你,请不要忘记接受它-->还有更多信息