[英]VBA function for Controls in Userform
我是VBA的新手,所以我对这个问题看起来很傻表示歉意:我已经在其中设置了一些控件的UserForm,并按如下所示创建了一个名为ResetMyField
的函数:
Function ResetMyField(MyField As Object)
If MyField = ProjectReference Then
'do something different and then
End If
MyField.Value = ""
End Function
当我使用ResetMyField(ProjectReference)
调用此函数时,VBA出现424错误(需要对象)。 我应该在函数中声明MyField
为其他类型的变量吗?
函数和调用点都在Userform模块内部。
任何帮助将非常感激。
带括号的 ResetMyField(ProjectReference)
尝试将ProjectReference
组合框的默认属性传递到ResetMyField
。 组合框的默认属性是Value
,它不是Object
,并且ResetMyField
需要Object
,因此会出现错误(“ Object Required”)。
删除括号 :
ResetMyField ProjectReference
还要注意, If MyField = ProjectReference Then
,再次尝试比较MyField
和ProjectReference
默认属性,如果使用组合框,则将意味着If MyField.Value = ProjectReference.Value Then
。
如果您想知道MyField
是否为 ProjectReference
, MyField
If MyField Is ProjectReference Then
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.