Access命令DoCmd.Quit使用經驗之一(運行時錯誤 ‘2046’: 命令或操作”Quit“當前不可用)

2017-07-29 12:50:00
zstmtony
原創
3299

在Access主界麵窗體的卸載事件裡(Unlod),通常我們會加上以下VBA代碼,以便提醒用戶是否真的想退齣整箇繫統,讓用戶有一箇確認的過程:


Private Sub Form_Unload(cancel As Integer)
  
  If gf_MsgBox("您確定要退齣整箇管理繫統嗎?", vbYesNo + vbDefaultButton2) = vbYes Then
  
      DoCmd.Quit acQuitSaveNone
  
  Else
     Cancel=True   '取消退齣
  End If

End Sub
如果我們正常手工關閉這箇主界麵,或關閉整 箇Access數據庫時,這箇提示都會正常的


但昨天嚐試在Access2007 中, 選擇窗體 選卡 右鍵 “全部關閉”  或關閉 主界麵,關閉時卻提示以下錯誤

 提示以下錯誤:

  運行時錯誤 ‘2046’:
  命令或操作”Quit“當前不可用。
 
 進行代碼調試,代碼停在這句上麵 

  DoCmd.Quit acQuitSaveNone


   原來在這箇場景下,這箇命令不能使用


   後來 在這句前麵加一箇忽略所有錯誤的代碼

     On Error Resume Next
     DoCmd.Quit acQuitSaveNone


   解決這箇問題。

   另在軟件主界麵再加上一箇退齣按鈕,讓用戶主動關閉整箇軟件。

    分享