if条件使用错了吗?为什么一直显示else后的语句

img


为什么不管是点yes还是no按钮,显示出来的都是点击了no按钮,到底是哪里出错了?

这段代码中,If-Else语句块中的Yes和No消息框都没有指定标题,在代码执行时,默认的标题为“Microsoft Visual Basic”而非“MsgBox演示”,所以您看到的是两个没有标题的消息框,区分不出是哪个按钮被点击了。将Yes和No消息框中的标题参数也设置为“提示”,可以解决这个问题。比如:

Private Sub cmd1_Click()
    Dim Msg, Style, Title, Response
    
    Msg = "Do you want to continue?"
    Style = vbYesNo + vbCritical + vbDefaultButton2
    Title = "MsgBox演示"
    
    Response = MsgBox(Msg, Style, Title)
    If Response = vbYes Then
        MsgBox "您单击了Yes按钮", vbOKOnly, "提示"
    Else
        MsgBox "您单击了No按钮", vbOKOnly, "提示"
    End If
End Sub