2016-07-26 46 views
0

這應該是非常直接的,但由於某種原因它會不斷打開第二張表格作爲新記錄!我從來沒有創建過數年的數據庫,並且從那時起有兩個孩子,所以請在我的果凍大腦上輕鬆一下!訪問:如何打開與第一個相同的記錄的第二個表單?

這是一個事故報告數據庫,我們希望每次都在新窗口中運行每個問題的各個部分,就像嚮導一樣。第一部分詢問您是否要報告新事件或其他導航選項,報告新事件的命令是否正常,宏建設者,openform,表格名稱:關於受影響的人員02,將數據模式設置爲「添加」到每次都有新的記錄。迄今爲止都很好。

表單ID自動編號是在填寫姓名,地址等信息時生成的,然後點擊下一部分按鈕。我認爲,由於ID已經填寫並且該表中已創建該記錄,所以如果我設置命令按鈕以打開表單並根據ID進行過濾,那麼它將出現在下一個表單中(ID字段可見在每個表單的頂部角落),但由於某種原因,它不是過濾,只是每次在每個部分創建一個新記錄。每個部分都是獨立保存的,因爲它是自己的記錄。

我試着通過宏建設者(設置數據模式,以「編輯」這些後續形式),我試着按照命令按鈕嚮導和鏈接兩個,關係在那裏,第一個形式仍然是開放的,因爲我認爲也許如果我設置宏關閉它作爲另一個打開然後它不會有數據查找?現在抓着吸管試着讓它工作,但我做了很多次這樣的事情,從來沒有這個問題!

任何幫助或建議將大規模讚賞,謝謝!

回答

0

創建自動編號的事實並不意味着記錄已創建,也不意味着記錄已保存。如果用戶點擊撤銷並退出,那麼數據永遠不會被保存,實際上自動編號會被跳過並且不會被使用。這就解釋了爲什麼當沒有發生刪除時,您經常會看到自動編號中的空白。

簡單的解決方案是在啓動其他/下一個表單之前,確保將當前表單中的數據寫入表中。下面的代碼將實現這一目標:

If me.dirty = true then me.dirty = false 

Docmd.OpenForm "Form2",,,"id = " & me!id 

所以第一行強制記錄保存,和第二行代碼將啓動第二個形式相同的當前記錄,我們都在。

+0

好點!謝謝你的新眼睛!我會再回來一段時間,再次檢查我的宏,我想我會設置它來自動保存,當我打開新的表單時,但可能在所有的回合中,這部分被遺忘了! –

+0

不,不幸的是,這似乎也沒有區別。我也回去了,並且重新檢查了主表,記錄肯定會保存到它,每個部分都會生成一條新記錄,而不是從一個部分到下一個部分的連續流。 –

0

我想我已經到了那裏......經歷了很多挫折!如果其他人正在尋找這個問題的解決方案,Albert D. Kallal是正確的,它會保存數據,但它會首先打開新的表單,然後當前一個表單被關閉時,它會保存數據以便它出現在我的桌子上,但還沒有存在被拉到下一個表格。簡單的修復,改變了宏命令的順序。我希望他建議的代碼也能起作用,如果它不在某人的手中,那麼這個代碼會出現一個嚴重的嬰兒大腦...

相關問題