簡體   English   中英

Microsoft Access在子窗體中填充外鍵

[英]microsoft access populate foreign key in subform

因此,我一直在閱讀有關該問題的所有資料,每個人的答案似乎都是替代方案,但這些替代方案對我而言實際上並不起作用。

我想做的是單擊Form-1中的一個按鈕,並使用Form-1中的正確外鍵打開Form-2,以便我可以查看數據並根據Form-1的鍵添加更多內容。 原因是form-1沒有足夠的空間容納我要使用的所有子表單。 另外,在form-1上放置一個按鈕以使form-2可見對我來說並不是很好,但現在看來是我唯一的選擇。

現在發生的是,當我單擊窗體1上的按鈕時,窗體2確實打開了,但是它顯示了表2中的所有數據,如果我嘗試添加新記錄,則必須手動輸入它。使用按鈕調用表格時,無法在表格2中獲取外鍵來自動填充表格1中的ID。

example tables and forms:
table-1 & form-1: The form has the same data as table
id
first name
last name

table-2 & form-2: The form has the same data as table
id
foreign key = table-1.id
address
someotherdata

目標:form-1有一個名為“添加數據”的按鈕。 它使用來自Form-1的相同ID的外鍵打開Form-2。 我可以查看過去的記錄或輸入更多數據並保存。 如果我轉到表格1記錄ID = 5並單擊按鈕,則表格2會彈出外鍵5,並允許我向外鍵5 / ID 5輸入更多數據。

如有任何疑問,請告訴我。 在弄清楚這一點之前,我真的做不了什么。 我覺得我想念一些東西,這應該容易得多。

謝謝!!

考慮:

表單后面的代碼可打開另一個表單以創建新記錄並使用OpenArgs傳遞值:
DoCmd.OpenForm "yourFormName", , , , acFormAdd, acDialog, Me.yourControlName

被調用表單后面的代碼從OpenArgs中提取值並填充字段:
If Me.NewRecord And Not IsNull(Me.OpenArgs) Then Me.yourControlName = Me.OpenArgs
真正的訣竅是弄清楚將其放入什么事件-可能是Open形式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM