我的資料庫中有4個查詢,為了在每次重新運行查詢時重繪 表單的內容(通過一個按鈕),我用vba來直接關閉和重新打開表單。這在以前是可行的,但現在我決定將我的報告嵌入到我的查詢表單中(在一個導航控制元素中),這個方法就不起作用了。我沒能找到一個能在這種設定下作業的 "重繪 "方法。我嘗試了Requery方法,但它并沒有更新我的表單。以下是我的情況:
背景資訊:當我點擊 "運行查詢 "按鈕時運行的代碼:
Forms! MainMenu! NavigationSubform.Form! rpt_equipment_at_location.Requery
我也試過這樣做,但它的效果是一樣的:
我也試過這樣做。
Me.rpt_equipment_at_location.Requery
rpt_equipment_at_location報告在點擊我的 "運行查詢 "按鈕后
。同樣的rpt_equipment_at_location報告在點擊我的*equipment_at_location表格的 "運行查詢 "按鈕后作為一個子報告
。我知道路徑是正確的,因為這段代碼導致表單 "閃爍"(就像表單被重繪 一樣),但是表單并沒有被更新為當前查詢的資訊。如果我打開rpt_equipment_at_location鏈接的父表單,所有的資訊都會被更新,并且在每次運行查詢時都會準確變化,但是該表單在我的導航控制表單中沒有以這種方式表示為子表單。它只顯示一條記錄,當我查詢時,那個表單要么沒有變化,要么變成空白。我的鏈接欄位已被填充,所以當它所鏈接的表單被更新時,rpt_equipment_at_location子表單不應更新嗎?
如果我需要澄清什么,請告訴我。
uj5u.com熱心網友回復:
我讓它作業了! 我不完全確定發生了什么,但我會試著解釋一下,以防其他人發生這種情況:
重要的是要注意到,這是個重要的問題。
需要注意的是,我的報告是基于一個查詢,所以當我將其放入我的表單中時(拖放),它應該提示我在該查詢的 SQL 代碼中呼叫的某些值(它參考了不同表單中的其他資料元素),但它沒有,因為我是在設計視圖。當我切換到布局視圖并放置我的子報告時,它提示我這些值,從而初始化表單中最初顯示的記錄。當我在表單中預先初始化了所有記錄后,Requery 代碼開始作業。
如果這沒有什么意義,請原諒。我不知道為什么 Access 會這樣,也不知道為什么在設計視圖中不作業,但這是對我有用的東西。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/314469.html
標籤:
上一篇:MSAccess中的標準
