我一直在開發訪問2007數據庫,並遇到了通過拆分視圖表單添加新記錄的問題。無法在訪問2007拆分表單中創建新記錄
爲了防止意外刪除字段,我在每個表單上添加了一個鎖定按鈕(右圖第二張圖)。用戶切換此按鈕以在編輯模式和只讀模式之間切換。默認情況下,表單處於只讀模式。
上的按鈕單擊事件這VBA代碼切換以下屬性AllowEdits
,AllowAdditions
,AllowDeletions
,並切換「刪除記錄」和「添加記錄」按鈕的啓用狀態,使用下面的代碼。
Private Sub Form_Load()
ReadOnly (True)
End Sub
Private Sub btnLock_Click()
If lblEditMode.Caption = "Edit Mode" Then
ReadOnly (True)
Else
ReadOnly (False)
End If
End Sub
Private Function ReadOnly(value As Boolean)
Dim enableState As Boolean
enableState = Not value
If Dirty Then Dirty = False
AllowEdits = enableState
AllowAdditions = enableState
AllowDeletions = enableState
BtnNew.Enabled = enableState
BtnDelete.Enabled = enableState
If enableState = False Then
lblEditMode.Caption = ""
Else
lblEditMode.Caption = "Edit Mode"
End If
End Function
最初,我在窗體底部使用了自定義導航按鈕,但隨後刪除了這些,以支持使用拆分窗體。
現在我所能做的就是編輯或刪除記錄。我無法添加新記錄。
我已經通過了所有我能想到用設計視圖的屬性了,但沒有發現任何可能會造成這一點。任何想法可能會造成這種情況?
我修改了許多表單來使用分割視圖,現在他們都遭受同樣的問題。
'添加新'按鈕(使用標準宏)生成消息'你不能去指定的記錄'。表格的數據表部分在底部不顯示可插入的行。此外,Home光帶上的「添加」按鈕啓用和禁用,因爲AllowAdditions
的狀態已切換。
編輯:將表單從拆分表單更改回單個表單允許我添加新記錄。但是,只要我再次將表單重新轉換爲拆分表單,我就失去了添加新記錄的能力。
第二種形式是子表單嗎?你能否給我們詳細的基礎表/查詢? – dwo
不,這是一種拆分形式,即在表單的頂部和底部表示相同的數據。底部的數據網格顯示了很多記錄,但表單的主要部分(頂部)顯示了在數據網格中選擇的記錄。數據沒有什麼不尋常之處。它只是一系列不同類型的字段(字符串,長整數,日期,索引自動遞增PK ID字段)以及多個查找表(由組合框描述)。 – Bryan
你有沒有在網上任何地方提供這個樣本/測試數據庫,可以下載?它確實看起來像它可能是一個Access錯誤。我建議你也在UtterAccess上發帖。那裏有幾個MVP可能會有興趣爲你研究這個問題。 – HK1