将两个结果传递给另一个子

我正在尝试将xy的结果从sub returnIntegerAndBoolean给sub testing1

在这种情况下,用户可以运行sub testing1并返回结果“4true”,但这不起作用:

 Public Sub returnIntegerAndBoolean(ByRef x As Integer, Byref y As Boolean) x = 2 x = x + 2 If x > 5 Then y = False Else y = True End If End Sub Sub testing1() Dim a As Integer Dim b As Boolean returnIntegerAndBoolean a = x, b = y MsgBox a & b End Sub 

有人可以看看吗?

你的调用语法是不正确的,你传递一个评估结果(一个等于x),并从布尔而不是一个types错误得到一个讨厌的自动转换。

代替:

 returnIntegerAndBoolean a = x, b = y 

使用:

 returnIntegerAndBoolean a, b 

或者如果你想注意的参数:

 returnIntegerAndBoolean x:=a, y:=b