StackOverflow中。我有一個我一直在努力解決的問題。目前,我有一個顯示聯盟數據的表單,並帶有一個按鈕,顯示「創建新聯盟」。當我點擊它時,它會顯示一個彈出窗口,允許您輸入名稱,如下圖所示。幾乎一切正常,但我創建它後無法顯示新記錄。看到我的代碼如下 - 你會感受到我想要做的事情。順便說一句,如果它很重要,「聯盟名稱」組合框允許您選擇記錄。我不知道它是如何拋棄我的更新的,但我想我應該包含這些信息。創建新記錄後,無法將表單顯示在Access 2010
這裏的形式:
下面的代碼:
有趣的是,StackOverflow上似乎並沒有使編輯後適當縮進代碼 - 我是能夠通過新的測試職位成功完成。好吧。我是一個菜鳥到這個問題,以及:
Private Sub CreateConsortiumButton_Click()
If IsNull(Me.ConsortiumNameText) Or Me.ConsortiumNameText = "" Then ''insert better validation here
MsgBox "Please enter a valid consortium name."
Else
'' Create a new Consortium record with the ConsortiumNameText field on the popup window
Dim rst As DAO.Recordset
Set rst = CurrentDb.OpenRecordset("Consortium")
rst.AddNew
rst("Consortium name").Value = Me.ConsortiumNameText
ConsortiumID = rst("ConsortiumID").Value
rst.Update
'' Now, create a corresponding record in the ResearchContributions table
Set rst = CurrentDb.OpenRecordset("ResearchContributions")
rst.AddNew
rst("ConsortiumID").Value = ConsortiumID
rst.Update
MsgBox "Consortium " & Me.ConsortiumNameText & " successfully created."
'' Change the form's combo box to reflect the new record
Forms!Main!NavigationSubform!ConsortiumNameCombobox = Me.ConsortiumNameText
'' Close popup
DoCmd.Close
'' Attempt to set the record on the main form to the newly created one - NOT WORKING!
DoCmd.OpenForm "Main", acNormal, , "[ConsortiumID] = " & ConsortiumID
End If
End Sub
我認爲這個問題的一部分,可能要做的事實,我已經放在了「財團表」的形式,這是基於一個標籤控制成「主」形式。也許是因爲我試圖用某個ConsortiumID打開表格,該ConsortiumID不適用於聯盟表格。看起來好像我不能把主人和孩子聯繫起來,但這在過去並不是必需的。如果這些概念聽起來含混不清,請原諒我,因爲這僅僅是因爲這些概念在我的腦海中仍然模糊不清 - 這是我的第一個Access項目。任何人有任何提示?
代碼圖片的要點是什麼? – Fionnuala
當我粘貼其他文字時,它沒有突出顯示。我覺得這樣會更具可讀性。如果你願意,我可以粘貼代碼。 –
我做到了,但是在編輯之後它神祕地沒有正確縮進。當我創建新帖子時,它可以正確縮進。奇怪的。 –