[英]Creating an SQL query in MS Access for a dropdown box lookup in a subform?
我有以下兩個表,第一個叫做Projects,第二個叫做Parts:
然后,我有一個表單(我們稱之為表單1),它使用Projects作為其Record Source,其子表單將Projects表上的Project鏈接到Parts表上的Project,並僅顯示與所選Projects記錄源關聯的項,如此:
現在,我希望能夠做的是在表單1上有一個下拉列表,只有子表單上列出的項目可選,但我似乎無法找到執行此操作的SQL代碼。
我當前的下拉列表使用以下代碼,但當然這只顯示所有項目,而不是僅顯示在子表單上的項目:
SELECT [Parts].[ID], [Parts].[Item] FROM Parts ORDER BY [Item];
我想要做的就是這樣,但顯然使用了正確的語法:
SELECT [Parts].[ID], [Parts].[Item] WHERE [Parts].[ID]= & Me![ID] FROM Parts ORDER BY [Item];
把它放在表單的Load事件中:
Me!MyCombo.RowSource = "SELECT [Parts].[ID], [Parts].[Item] FROM Parts WHERE [Parts].[ID]= '" & Me![ID] & "' ORDER BY [Item];"
Me!MyCombo.Refresh
如果Parts.ID是數字字段,則需要從中取出單引號,如果它是文本字段,則將它們保留。
使用表單的“當前”事件來設置組合的RowSource屬性,因此每當表單中的活動行發生更改時,您將獲得組合中的更新列表。
Me!MyCombo.RowSource = "SELECT Project, Item FROM Parts WHERE Project = '" & Me.Project & "' ORDER BY Item"
對不起,user2174085:這應該是您回答的評論,但我沒有選項可以提供評論。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.