VBA:IF语句中的意外行为。

时间:2012-05-07 17:11:36

标签: excel vba if-statement

我正在使用VBA for Microsoft Excel 2007.我的代码如下:

 Sub First()

 End Sub

 Function Two() As Boolean

 End Function

 Sub Sun()
     If (Two()) Then
         First()
     End If
 End Sub

这段代码有什么问题?为什么不编译?

我可以不在IF语句中使用subs吗?它是VBA的magic吗?我该怎么办或者应该解决这个问题?

2 个答案:

答案 0 :(得分:3)

尝试从对First

的调用中删除括号
Sub First()

End Sub

Function Two() As Boolean

End Function

Sub Sun()
    If (Two()) Then
        First
    End If
End Sub

答案 1 :(得分:0)

编译:

Sub First()

End Sub

Function Two() As Boolean

End Function

Sub Sun()
    If (Two()) Then
        First
    End If
End Sub

您需要从First来电中删除括号。