VBA中的ByRef参数类型不匹配
我写的代码就像VBA中的ByRef参数类型不匹配,vba,Vba,我写的代码就像 sub something Dim symbols as Symboldetail Dim errorSymbols as Symboldetail Dim anyError as boolean Dim name, id as String set symbols = new Symboldetail set errorSymbols = new Symboldetail anyerror = funName("",""
sub something
Dim symbols as Symboldetail
Dim errorSymbols as Symboldetail
Dim anyError as boolean
Dim name, id as String
set symbols = new Symboldetail
set errorSymbols = new Symboldetail
anyerror = funName("","",symbols ,errorSymbols)
end sub
Function funName(ByVal name As String,ByVal id As String, ByRef symbols as Symboldetail,ByRef errorSymbols as Symboldetail) As Boolean
'here editing the values of symbols and errorSymbols
funName = false/true
end Fuction
当我编译这段代码时,它抛出错误“ByRef参数类型不匹配”
我不知道我犯了什么错误
提前谢谢我知道我犯了什么错误
'i declared these variables like
Dim symbols, errorSymbols as Symboldetail
'instead of
'Dim symbols as Symboldetail
'Dim errorSymbols as Symboldetail
因此,它将符号作为变量而不是Symboldetails,因为当我传入变量时,它抛出的错误是“type mis match error”
@非常感谢您的宝贵意见您有一个同名的子例程和函数,为什么要这样做?当一个是函数,一个是子程序时,不能重载。那么什么是
Symboldetail
errorSymbols=False
?如果Symboldetail是一个类实例/udt,那么它也不能是布尔值。现在我更正了它,这里我写错了,但在代码中,它们的名称不同。请使用所有参数调用funNameanyerror=funName(name,id,errorSymbols,symbols)