Msgbox是或否始终删除所有更改

时间:2015-11-17 19:28:01

标签: vba ms-access access-vba ms-access-2007

我的表单上有一个应该退出表单的按钮。单击此按钮时,会出现一个消息框提示您保存更改?"是或否。不幸的是,无论是否'是'是或者没有'单击下面的代码不保存更改:

Private Sub Prekid_Click()

    If Me.Dirty Then If MsgBox("Da li želite da saèuvate promene?", vbYesNo) = vbYes Then Upisivanje_Click

    DoCmd.RunCommand acCmdUndo

    Forms!Pregled!LicencaList.Form.Requery
    DoCmd.Close acForm, Me.Name
End Sub

1 个答案:

答案 0 :(得分:2)

如您刚刚演示的那样,在一行中执行If ... Then ...可能会造成混淆。 :)

你的代码应该是:

Private Sub Prekid_Click()

    If Me.Dirty Then
        If MsgBox("Da li želite da saèuvate promene?", vbYesNo) = vbYes Then
            Call Upisivanje_Click
        Else    ' No case
            DoCmd.RunCommand acCmdUndo
        End If
    End If

    Forms!Pregled!LicencaList.Form.Requery
    DoCmd.Close acForm, Me.Name

End Sub

acCmdUndo应仅在Else案例中运行(如果点击了No)。