MsgBox的语法错误

Bit*_*lue 2 excel vba

这会导致语法错误:

Sub test()
    MsgBox("hello world", vbOKCancel) ' syntax error at this line
    Exit Sub
End Sub
Run Code Online (Sandbox Code Playgroud)

为什么?

Jon*_*ton 8

你只是使用这个MsgBox方法Sub.在VB6/VBA中,Sub调用要么不使用括号,要么使用Call关键字.

MsgBox "hello world", vbOKCancel

or

Call MsgBox("hello world", vbOKCancel) 
Run Code Online (Sandbox Code Playgroud)

当使用方法作为函数时,括号开始起作用(即,您想要返回值)

Dim msgResult

msgResult = MsgBox("hello world", vbOKCancel) 
Run Code Online (Sandbox Code Playgroud)

我猜想,因为你正在使用vbOKCancel,这是你最终用来找出用户点击的版本.