比如我選擇文具類別后,點擊名稱下拉框中只出現文具的選項?

uj5u.com熱心網友回復:
你的商品應當有三個層級:類別、名稱、型號,可以建三個關聯的表。類別表欄位名:類別ID,類別
名稱表欄位名:名稱ID,名稱,類別ID(與類別表的類別ID關聯)
型號表欄位名:型號ID,型號,名稱ID(與名稱表的名稱ID關聯)
表單上,類別列的組合框屬性:資料——行來源:類別表,系結列:1,格式——列數:2,列寬:0cm。
行來源就是組合框的資料來源,系結列是將組合框系結到類別表的第幾列,第一列是類別ID。列寬0,是將第一列隱藏。
名稱列的組合框屬性:行來源:用生成器建立一個查詢,查詢以名稱表為基礎:名稱ID,名稱,類別ID。在類別ID列的條件中,寫上本表單的類別列的組合框:[Forms]![表單]![需要聯動的上級類別組合框]
如果是SQL,那:SELECT 名稱表.名稱ID, 名稱表.名稱, 名稱表.類別ID FROM 名稱表 WHERE (((名稱表.類別ID)=[Forms]![表單]![需要聯動的上級類別組合框]));
然后,型號組合框與之類似,與名稱列關聯。
總的原理是這樣:三級組合框或多級組合框的聯動,是以上級組合框選擇后的資料為基準,篩選下級組合框的可選專案。
類別組合框系結了個表的第一列,即ID列,選擇后,雖然我們隱藏了此列,只能看到文字類別,但是組合框真正的資料是數字。(在VBA中,組合框的value屬性輸出ID,text屬性輸出顯示的文字。)如果你系結表的第二列,那么組合框真正的資料就是"類別"了。
因為我們需要用表單的類別組合框來篩選名稱組合框的可選擇專案,那么名稱表與類別表關聯的僅僅是類別ID,所以,在類別組合框系結類別ID列,最方便。
在表單的名稱組合框里用生成器建立查詢,查詢的是名稱表,條件是限定于剛剛已選擇的類別ID。






uj5u.com熱心網友回復:
這樣寫每次打開表單都會提示輸入引數,怎么關掉?uj5u.com熱心網友回復:
這樣做了之后,第一次顯示都很正常,但是當類別或者名稱下拉框多次點擊并且換成其他的內容后,它下一級的下拉串列內容不變。它的資料來源能不能及時更新呢?
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/13358.html
標籤:Access
