宏工作中的数据验证,但如果运行其他宏,则会引发1004错误

时间:2019-01-30 20:15:34

标签: excel vba

我有三个宏,它们都有很多功能,但是第一个宏将格式应用于表和数据。在此宏中,应该将下拉菜单应用于列“ C”,下拉列表值取决于列“ N”中的值。我已经设法通过“ C”列的简单公式来做到这一点。

=INDIRECT($N2)

该宏似乎可以正常工作,因为它可以创建所需的结果。但是,当我然后特别运行另一个宏时,在宏中似乎已经执行过的代码的数据验证行上收到1004错误。 (导致第一个错误的宏正在打开新工作簿。)

出现错误的最下面两行。

Range("C2:C1500").Select
With Selection.Validation
    .Delete
    .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
    xlBetween, Formula1:="=INDIRECT(" & Range("$N2").Address & " )"

有人知道为什么会这样吗?出现错误的代码的宏运行良好,仅在此后任何时间运行一个特定的宏时,它才会显示错误。但是,如果我逐步执行触发第一个宏出错的第二个宏,则什么也不会发生(没有错误出现,第二个宏运行良好)。

谢谢。

0 个答案:

没有答案