使用VBA进行数据validation

我得到了“应用程序定义或对象定义的对象错误”以下代码

10 Sheets("Main").Select 20 currYearDate = DateValue("April 1, " & Year(Now)) 30 nextYearDate = DateValue("March 31, " & (Year(Now) + 1)) 40 Range("H9").Activate 50 With ActiveCell.Validation 60 .Add Type:=xlValidateDate, AlertStyle:=2, Operator:=1, Formula1:=currYearDate, Formula2:=nextYearDate 70 .ErrorMessage = "You should enter date between " & Format(DateValue("April 1," & Year(Now)), "dd-mmm-yyyy") & " and " & Format(DateValue("March 31," & Year(Now) + 1), "dd-mmm-yyyy") 80 .ErrorTitle = "Warning Message" 90 End With 

有人可以帮我吗?

尝试下面的代码:

  Sheets("Main").Select currYearDate = DateValue("April 1, " & Year(Now)) nextYearDate = DateValue("March 31, " & (Year(Now) + 1)) With Range("H9").Validation .Delete .Add Type:=xlValidateDate, AlertStyle:=2, Operator:=1, Formula1:=currYearDate, Formula2:=nextYearDate .ErrorMessage = "You should enter date between " & Format(DateValue("April 1," & Year(Now)), "dd-mmm-yyyy") & " and " & Format(DateValue("March 31," & Year(Now) + 1), "dd-mmm-yyyy") .ErrorTitle = "Warning Message" End With