数据验证的运行时错误1004

时间:2014-07-11 01:00:18

标签: validation excel-vba vba excel

我有以下代码来验证单元格的输入是0到10之间的整数:

Range("c4").Activate
With ActiveCell.Validation
    .Add Type:=xlValidateWholeNumber, _
         AlertStyle:=xlValidAlertStop, _
         Operator:=xlBetween, _
         Formula1:="0", _
         Formula2:="10"
    .InputTitle = "integers"
    .ErrorTitle = "Invalid Rating"
    .InputMessage = "Enter a whole number between 0 and 10"
    .ErrorMessage = "You must enter a whole number between 0 and 10"
End With

但是,每次运行它时都会显示运行时错误1004,它表示应用程序定义或对象定义的错误。我已经检查了其他帖子,但无法弄清楚究竟是什么问题,因为这应该是一个非常简单的代码。

1 个答案:

答案 0 :(得分:2)

我认为你有点误解了这次行动。

您的代码将在第一次运行时正常运行,并将按预期设置验证规则。随后的时间它将无法正常工作,为您提供您所看到的错误,因为已经设置了单元格C4的验证。

如果您检查工作表中的单元格C4,您将看到您输入的验证确实有效。

要删除您添加的验证,请执行以下操作:Range("c4").Validation.Delete。然后,如果再次运行原始代码,它将起作用,您将能够像以前一样在单元格C4中查看结果。