Vba MACRO运行时错误1004:应用程序定义.... [英] Vba MACRO runtime error 1004 : application defined ....

查看:96
本文介绍了Vba MACRO运行时错误1004:应用程序定义....的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Public Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 2 Then
With Target.Validation
 .Add Type:=xlValidateList, AlertStyle:=xlValidAlertWarning, _
 Operator:=xlEqual, Formula1:="=Sheet1!S1:S22"
End With

ElseIf Target.Column = 3 Then
With Target.Validation
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertWarning, _
Operator:=xlEqual, Formula1:="=Sheet1!T1:T22"
End With
End If

End Sub





我尝试过的事情:



这里我只想尝试使用vba获取数据验证列表,但仍无法执行



What I have tried:

Here I'm just trying to get a data validations list using vba, but still can't execute

推荐答案

解决您的问题非常容易...



据我记得,如果验证对象已经存在,则无法添加验证对象。您必须删除现有的验证才能添加新的。

请参阅: Validation.Add Method(Excel) [ ^ ]



有关应用程序定义或对象... 错误的更多信息,请检查:应用程序定义或对象定义的错误 [ ^ ]



最后,我建议在代码中添加错误处理程序。怎么样? 处理VBA中的运行时错误 [ ^ ]
It's really easy to resolve your issue...

As far as i remember, you can't add validation object if it already exists. You have to remove existing validation to be able to add new.
See: Validation.Add Method (Excel)[^]

For further information about Application defined or object ... error, please check this: Application-defined or object-defined error[^]

Finally, i'd suggest to add error handler to your code. How? Handle Run-Time Errors in VBA[^]


这篇关于Vba MACRO运行时错误1004:应用程序定义....的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆