运行时错误1004添加数据validation时。 我如何避免错误?

我正在使用以下过程将数据validation添加到单元格:

Sub SetDataValidationList(r As Range, s As String) Dim dv As Validation Set dv = r.Validation With dv .Delete If s <> "" Then .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:=s Else 'The backup string could be a parameter .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:="None available" End If End With End Sub 

它工作,而我正在开发Excel文件几天,但现在出于某种原因的行。添加.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:=s抛出运行时错误1004.什么可能是原因? 我怎样才能避免这个错误?

s"1.1,PM,PA,OE,MOA1,MOA2,MOA3,MOA4"

我只是想出来了。 原因是该表被保护。