有時候您可能想要排序數據,不是依字母順序或數值順序排序,而是依使用者定義的順序排序, (也稱為自定義或邏輯順序) 。 例如,比起依字母順序排序,將工作日排序為星期一,讓星期一第一次出現更有意義。 您可以在資料表或查詢的資料工作表檢視或表單的 [表單] 檢視中排序資料。
您想要做什麼?
排序少數唯一域值
在此程式中,您將撰寫使用 IIf 函數來排名員工職稱的運算式。
首先,建立包含三個字段的數據表:標題、FirstName 和 LastName。 在 [標題] 欄位中,輸入四筆新記錄的下列值:
-
內部銷售協調人
-
銷售經理
-
銷售代表
-
銷售部副總裁
在四筆記錄的 [名字] 和 [姓氏] 字段中,輸入您想要的任何名稱。
-
現在,在 [數據工作表檢視] 中開啟數據表。
-
在 [常 用] 索引 標籤的 [ 排序 & 篩選 ] 群組中,按兩下 [ 進階 ],然後按下快捷方式功能表上的 [ 進階篩選/排序 ]。
-
將您想要的欄位,例如 FirstName、LastName 和 Title 新增至網格線。
-
以滑鼠右鍵按兩下列表示式:
IIf ([Title] = “副總裁,銷售人員”, 1, IIf ([Title] = “Sales Manager”, 2, IIf ([Title] = “銷售代表”, 3, IIf ([Title] = “內部銷售協調者”, 4, 5) ) ) )
標題是包含排名值的功能變數名稱。 以引弧括住的值是儲存在欄位中的個別值。 後面的數值是指派給它的排名。 前述表達式會將 1 到 4 指派給四個不同的標題,並將排名 5 指派給所有其他的。 當您執行排序時,這個表達式中未提及的標題會被指派相同的排名 (5) 。
-
在包含表達式之欄的 [排序 ] 列中,按兩下 [ 遞增]。
-
在 [常 用] 索引 標籤的 [ 排序 & 篩選 ] 群組中,按兩下 [ 切換篩選]。
IIf 函數會傳回對應至 [標題] 欄位中值的數值。 例如,如果 [標題] 字段中的值是 [銷售管理員],則指派的數位為 2。 如果 [標題] 欄位中的值未列為函數中的自變數,例如區域 協調者,則會將數位指派為 5。 查詢接著會以遞增順序排序這些數位。
排序大量唯一域值
如果您要排名的值很多,則建立查閱表格是排序數據的更好方法。
假設 [員工] 數據表參照超過 50 個不同的標題。 您必須先建立查閱數據表,並準備現有數據表以查詢新數據表。 然後,您將這兩個數據表建立關聯,並建立查詢。
建立查閱數據表並修改現有數據表
-
建立會儲存標題的新查閱表格。 命名數據表 字幕,並將字段設定為括弧中指定的數據類型,如下表所示:
TitleID
(自動編號)標題
(文字)1
銷售部副總裁
2
銷售經理
3
銷售代表
4
內部銷售協調人
-
將 [標題標識符] 字段設為主鍵。
-
修改 [員工] 數據表,以尋找字幕數據表。
-
在 [設計檢視] 中,將 [ 標題] 字 段的名稱變更為 [標題標識符]。
-
在 [ 數據類型] 欄中,將 [數據類型 ] 變更為 [數位]。
-
-
在 [一 般] 索引 標籤的 [ 字段內容] 底下,將 [字段大小 ] 變更為 [長整數]。
-
儲存數據表並忽略有關數據遺失的警告。
-
切換到資料工作表檢視。
-
將標題列填入對應至標題值的 TitleID 值。
例如,如果記錄的標題值是 Sales Manager,請輸入 2。 針對銷售代表,請輸入 3。
-
儲存並關閉資料表。
將兩個數據表關聯
-
在 [資料庫工具] 索引標籤上的 [資料庫關聯圖] 群組中,按一下 [資料庫關聯圖]。
-
在 [ 設計] 索引 標籤的 [ 資料庫關聯圖] 群組中,按兩下 [ 新增數據表 (] 或 [在 Access) 中 顯示數據表 ]。
-
選 取 [字幕 與 員工],然後按兩下 [ 新增 ] 將其新增至 [資料庫關聯圖] 視窗。 關閉 [顯示資料表] 對話方塊。
-
將 [標題標識符] 字段從 tblTitles 數據表拖曳到 [員工] 數據表中的 [標題標識符] 字段。
[ 編輯關聯] 對話框隨即開啟。
-
確定兩欄中顯示的功能變數名稱都是 TitleID,而且 [ 關聯類型 ] 方塊會顯示 [一對多]。 如有需要,您可以變更功能變數名稱。
-
選取 [強迫參考完整性] 核取方塊。
-
按一下 [建立] 來建立關聯。
[ 編輯關聯] 對話框隨即關閉,並儲存變更。
-
關閉 [ 資料庫關聯圖] 索引標籤 。
建立查詢
-
在 [建立] 索引標籤的 [查詢] 群組中,按一下 [查詢設計]。
-
在 [ 新增數據表 (Access 中 顯示數據表) ] 對話框中,按兩下 [ 資料表 ] 索引標籤,按兩下 [ 員工],然後按兩下 [字幕]。
-
從 [員工] 數據表新增 [員工標識符]、[姓氏] 和 [FirstName] 欄位,然後從 [標題] 數據表新增 [標題] 字段至查詢設計網格線。
-
切換到資料工作表檢視。