依據文字欄位中儲存的數值排序記錄

儲存在 Access 中簡短文字 (或) 備忘 (中的) 字串會按字母順序排序。 換句話說,數位會依據組成值的個別位數進行排序,而不是以數值排序。 例如,值 11 會顯示在 2 之前,而值 12 會顯示在 3 之前,如下表所示。

學生名稱

學生否

立民

1

Maria

10

威廉

11

瑪麗

12

2

林恩

3

傑森

4

瑪麗

5

若要確保數位是依據數值而不是字母順序排序,請執行下列其中一項操作:

  • 如果欄位只包含數值,請考慮將欄位的資料類型變更為數位貨幣

  • 在下列程式中執行下列操作:

    • 欄位只包含數值,但您不想變更欄位的資料類型。

    • 該欄位同時包含數值和字串值,但您想要在排序時忽略字串值。

此程式使用 Val函數取得儲存為文字之數位的數值。 運算式也會使用 IIf 函數來處理可能位在排序欄位中的 Null 值。

  1. 在 [首頁&排序與篩選群組中,按一下 [進一步排序,然後按一下快捷方式功能表上的進一步篩選/排序。

  2. 輸入運算式Expr1:IIf ([Fieldname] Is Null, 0, Val ([Fieldname]) ) 位於第一欄的 [欄位] 列中。

    IIf 函數會檢查域值是否為 Null,如果是,則視為 0。 如果值不是 Null,IIf 函數 會呼叫 Val 函數以取得相等數值。

  3. 在排序 儲存格,選取遞增遞減

    遞增排序會顯示頂端有最小值的記錄,以及底部有最大值的記錄。 遞減排序則相反。

  4. 在 [ 首頁> 的 [排序與篩選& 按一下 [切換篩選

如果上述程式無法解決您的問題,您可以嘗試另一種方法,避免變更資料表的結構。 這涉及包含較少位數及前置字元為零的「邊界」值。 例如,您先將值 11、2、2000 和 3 變更為 0011、0002、2000 和 0003,然後再進行排序。

頁面頂端

需要更多協助?

增進您的 Office 技巧
探索訓練
優先取得新功能
加入 Office 測試人員

這項資訊有幫助嗎?

×