當你在 Access 桌面資料庫的表單中輸入資料時,從清單中選擇一個值比記住要輸入的值來得更快更簡單。 選項清單也有助於確保欄位中輸入的數值是合適的。 清單控制項可以連接至現有資料,也可以顯示您在建立控制項時輸入的固定值。 繼續閱讀,了解存取表單可用的清單控制,以及如何建立和自訂它們。
您想要做什麼?
了解清單方塊控制項的類型
Access 為表單提供兩個清單控制:清單框與組合框。
列表框: 列表框控制項會顯示一串數值或選項。 列表框包含資料列,且通常大小設計使得數列同時可見。 資料列可以有一個或多個欄位,可以顯示標題或不含標題。 如果清單的列數超過控制項能顯示的範圍,Access 會顯示在控制鍵中顯示一個滾動列。 使用者只能在清單框中選擇,且無法在清單框中輸入數值。
組合盒: 組合框控制提供了更精簡的方式來呈現選項列表。 這個清單在你選擇下拉選單箭頭之前是隱藏的。 組合框還能讓你輸入列表中沒有的數值。 如此一來,下拉式方塊控制項便結合了文字方塊與清單方塊的功能。
- 選擇箭頭以顯示下拉選單。
- 在下拉選單中選擇一個選項。
清單方塊和下拉式方塊可以繫結或取消繫結控制項。 這些控制項可以查詢您自行輸入的固定清單中的值,或者它們可以在資料表或查詢中查詢值。 要建立一個可查詢表格或查詢值的綁定清單框或組合框,請確保表單是基於包含外鍵欄位或查詢欄位的記錄來源。 這使得建立連結清單框或組合框中資料與表單資料所需的關聯成為可能。
使用精靈建立清單方塊或下拉式方塊
在 導航窗格中,右鍵點選表單,然後選擇 「設計檢視」。
注意
此程序假設表單繫結至資料表或查詢。 如果表格未綁定,有些步驟就不適用。 要判斷表單是綁定在資料表還是查詢上,按 F4 顯示屬性表。 在屬性工作表的 [資料] 索引標籤上,[記錄來源] 屬性方塊會顯示表單繫結的資料表或查詢。
在 表單設計 標籤的 控制 項群組中,請確定選擇 了使用控制精靈 。
選擇 清單框 工具或 組合框 工具。
在表單中,選擇你想放置清單框或組合框的位置。
- 根據你的選擇,會啟動 列表盒精靈 或 連擊盒精靈 。
當精靈詢問您要如何取得控制項的值時,請執行下列其中一項作業:
- 如果你想顯示來自記錄來源的當前資料,請選擇 「我想要」的列表框/組合框,這樣可以查詢表格或查詢中的數值。
- 如果你想顯示一個固定且很少會改變的數值清單,請選擇我 會輸入我想要的數值。
- 如果你想讓這個控制項執行尋找操作,而不是當作資料輸入工具,請根據 我在清單框/組合框中選擇的值,選擇「尋找我的表單上的記錄」。 這會建立一個未綁定的控制項,並內嵌一個巨集,根據使用者輸入的值執行尋找操作。
依照指示指定數值的呈現方式。
如果您選擇精靈第一頁的前兩個選項之一,精靈會詢問您要 Access 在您選取值時執行的動作。 執行下列其中一個動作:
- 要建立未綁定控制項,請選擇 「記住該值以備後續使用」。 這表示 Access 會保留所選值,直到使用者更改或關閉表單,但不會將該值寫入資料表。
- 要建立綁定控制項,選擇 「儲存該值」到這個欄位,然後選擇你想要綁定控制項的欄位。
選擇 「下一步」,然後輸入控制項的標籤。 這個標籤會顯示在控制器旁邊。
選取 [完成]。
新增 [查閱欄位] 至表單以建立清單方塊或下拉式方塊
您可以新增 [查閱欄位] 至表單,以建立繫結清單方塊或下拉式方塊。
在資料表中建立 [查閱欄位]。 你建立的查詢欄位可以是多值,也可以只包含單一值。 欲了解更多關於建立多值查詢欄位的資訊,請參閱 建立或刪除多值欄位。
執行下列其中一個動作:
建立以包含 [查閱欄位] 的記錄來源為基礎的新表單。 例如,在 導覽窗格中,選擇包含 Lookup 欄位的資料表或查詢,然後在 「建立 」標籤的 Forms 群組中選擇 Form。 Access 會自動為 [查閱欄位] 建立下拉式方塊。
在表單中新增清單方塊或下拉式方塊:
在 [設計檢視] 中,開啟以包含 [查閱欄位] 之記錄來源為基礎的表單。
如果欄位 清單 窗格沒有顯示,按 Alt+F8 即可顯示。
按兩下 [查閱欄位],或將 [查閱欄位] 從 [欄位清單] 窗格拖曳至表單。 Access 會自動建立繫結至該欄位的下拉式方塊。
秘訣
要將組合框改成清單框,或反過來,請右鍵點擊控制鍵,在快捷鍵選單中選擇 「變更到」 ,然後選擇你想要的控制類型。
在不使用精靈的情況下,建立清單方塊或下拉式方塊
當你不使用精靈建立清單框或組合框時,許多控制項屬性都是自己設定的。 如果您想了解更多特定房產的資訊,請選擇相應的房產框並按 F1。
在 [設計檢視] 中開啟表單。
在 表單設計 標籤的 控制 項群組中,請確定沒有選擇 使用控制精靈 。
選擇 清單框 工具或 組合框 工具。
在表單內選擇一次即可建立預設大小的控制項,或是選取並拖曳直到控制項大小符合你的需求。
控制項仍被選中,按 F4 開啟其屬性表。
請依照以下表格作為指引,設定 列來源類型 與 列來源 屬性。
若要這麼做 將 Row Source Type 屬性設定為 將 列來源 屬性設定如下 顯示來自表格或查詢的值,或陳述句的 SQL結果資料表/查詢 在下拉選單中,選擇包含你想在列表框或組合框中出現的值的表格或查詢。 或者打一句 SQL話。 或者,在屬性工作表 的資料分頁 中,選擇 建置 按鈕以開啟查詢建置器。 欲了解更多關於建立查詢的資訊,請參閱 建立簡單選擇查詢。顯示固定的值清單 值清單 輸入以分號分隔的固定值清單 ( ;)。 例如,North;South;East;West。 或者,在屬性工作表 的資料標籤中 ,選擇 建置 按鈕開啟 「編輯清單項目 」對話框,然後將項目分開輸入。顯示資料表或查詢中的欄位清單 欄位清單 在下拉選單中,選擇包含你想出現在清單框或組合框中欄位名稱的表格或查詢。 如果你想在控制項中出現多欄,選擇欄位 數量 屬性框,輸入你想要的欄位數量。 設定 [欄位寬度] 屬性以調整欄位寬度。 想了解更多關於每個屬性的資訊,請將游標放在屬性框中,然後按 F1。
如果你想讓 Access 儲存你選擇的值,請選擇 控制來源 屬性框,然後選擇你想綁定清單框或組合框的欄位。
自訂清單方塊或下拉式方塊
在設計檢視中打開表單後,確定選取了清單框或組合框,然後按 F4 開啟控制項的屬性表。 然後執行下列其中一個動作:
在清單框或組合框中更改排序順序: 如果你用精靈建立清單框或組合框,Access 會自動依照第一個可見欄位排序組成清單的列。 如果您要指定不同的排序順序,或如果您已將控制項的 [資料列來源] 屬性設為儲存的查詢,請使用下列程序:
- 選擇 「資料 」標籤,然後選擇 「列來源 」屬性框。
- 在屬性工作表 的資料標籤中 ,選擇 建置 按鈕以開啟查詢建構器。
- 在你想排序的欄位的 排序 列中,指定你想要的排序順序。
從列表框或組合框綁定欄位: 在列表框或組合框的 Bound Column 屬性框中,指定一個數字,對應該欄在列表框或組合框中的位置。 例如,輸入
1將列表框或組合框的第一欄綁定到 控制來源 屬性中指定的底層欄位。 當您計算欄位數時,請包含隱藏的欄位。 如果你將 Bound Column 屬性設為0,Access 會儲存清單索引,而不是某一欄的值。 如果您想要儲存一串數位,而非清單值,這個功能就很實用。在表單的清單框或組合框中隱藏欄位:
在 欄位寬度 屬性框中,輸入
0你想隱藏的欄位。 舉例來說,假設你有一個綁定的兩欄組合框,其中有一個寬 0.5 英吋的 SupplierID 欄位和一個寬 2 英吋的 SupplierName 欄位。 SupplierID 欄位是清單的第一欄,因此欄位 寬度 屬性設定為0.5";2"。 要隱藏 SupplierID 欄位,請將 欄位寬 度屬性設為0";2"。 SupplierID 欄位即使隱藏,仍可是綁定欄位。注意
在下拉式方塊中,當系統未顯示清單時,第一個顯示的欄位會顯示在下拉式方塊的文字方塊部分中。 例如,在上述範例中,系統會顯示 SupplierName 欄位,因為 SupplierID 欄位已隱藏。 如果 SupplierID 欄位沒有隱藏,它就會顯示出來,而不是 SupplierName 欄位。
在表單的組合框中加入欄位標題:
- 在 欄位標題 屬性框中,選擇 「是 」以顯示欄位標題。 只有當清單開啟時,系統才會顯示下拉式方塊中的標題。 如果下拉式方塊或清單方塊是以記錄來源為基礎,Access 會使用記錄來源的欄位名稱作為欄位標題。 如果組合框或清單框是基於固定值清單,Access 會使用欄位標題, (列來源) 屬性中的前 n 個資料項目作為欄位標題,其中 n = 欄位計數屬性中設定的數字。
關閉表單中組合框的「邊打邊填」功能:
- 在 自動展開 屬性框中,選擇 「編號」。 當 [自動展開] 屬性設為 [否] 時,您必須從清單中選取值,或輸入整個值。
在表單上設定組合框中列表框部分的寬度:
- 在清單寬度屬性框中,使用Windows控制台中目前設定的測量單位輸入你想要的寬度。 若要使用非預設的測量單位,請包含測量指標。 例如,輸入
2 cm。 記得要留足夠的空間放捲軸。 組合框的清單框部分可以比文字框部分寬,但不能更窄。 預設設定 ([自動]) 會將清單方塊的寬度設為與下拉式方塊的文字方塊部分相同。
- 在清單寬度屬性框中,使用Windows控制台中目前設定的測量單位輸入你想要的寬度。 若要使用非預設的測量單位,請包含測量指標。 例如,輸入
在表單的組合框中設定最大顯示的列數:
- 在 [清單資料列] 屬性方塊中,輸入數字。 如果實際列數超過 [清單資料列] 屬性中指定的數字,下拉式方塊中會顯示垂直捲軸。
限制組合框的項目只能在表單中組合框的清單部分:
在「 限制至清單 」物件框中,選擇 「是」。
注意
- 如果組合框中顯示的第一欄不是綁定欄位,Access 會限制條目只能進入該清單,即使 Limit To List 屬性設為 No。
- 如果 [限制為清單項目] 屬性設為 [否],當您輸入不在清單中的項目時,如果該下拉式方塊已繫結,輸入的值就會儲存到基礎欄位中,但不會新增到清單中。 若要將新項目新增至清單,請使用 [不在清單中時 (On Not In List)] 屬性與 [不在清單中 (Not In List)] 事件。