2011-10-11 50 views
0

我使用Access 2003中訪問VBA表單當前記錄被刪除

我有一個表格(FormA)顯示行的字段TableA。在窗體上我有一個按鈕,打開一個列表框,列出TableA的所有行。對話框上的刪除按鈕允許用戶從TableA中刪除選定的行,然後用戶關閉窗口並返回到FormA
如果用戶刪除了當前查看的行,則表單中的字段將顯示#DELETED
從對話框返回時,我編碼了一個Me.Form.Requery。當它執行時,我得到一條記錄被刪除的運行時錯誤。我希望表格能夠重新調整和重新定位當前記錄,而不是錯誤。我有代碼Sub Form_Current()。只是爲了看看這是否影響了查詢過程,我評論了它。現在,表單按預期重新設置。

看來Form_Current()的存在阻止了查詢。我嘗試在Form_Current中編碼Me.Requery,我所做的只是循環。 代碼我在Form_Current() requeues子表單。所以這是一個要求,表單在請求子表單的請求之前被重新排序。

有沒有辦法重新調用Form_Current()之前被調用?有更好的方法嗎?
我哪裏出錯了?

回答

1

這將是更好地把在對話框中重新查詢:

Forms!FormA.Requery