按存储在文本字段中的数值对记录排序

存储在短文本中的数字和字符串 (Access) 或长文本 (备注) 字段按字母顺序排序。 换言之,数字将基于组成该值的单个数字(而不是数字值)进行排序。 例如,值 11 显示在 2 之前,值 12 显示在 3 之前,如下表所示。

学生姓名

学生否

John

1

Maria

10

William

11

Mary

1.2

Jane

2

林恩

3

Jason

4

Mary

5

若要确保根据数字值而不是字母顺序对数字进行排序,请执行下列操作之一:

  • 如果字段仅包含数值,请考虑将该字段数据类型数字或货币的值

  • 如果为以下情况,请使用以下过程:

    • 该字段仅包含数值,但您不想更改数据类型的值。

    • 该字段同时包含数值和字符串值,但排序时需要忽略字符串值。

此过程使用 Val函数获取存储为文本的数字的数值。 该表达式还使用 IIf函数来处理排序字段中可能包含的 null 值。

  1. 在"开始"选项卡上的"排序&"组中,单击"高级",然后在快捷菜单上单击"高级筛选/排序"。

  2. 键入表达式Expr1:IIf ([Fieldname] Is Null,0,Val ([Fieldname]) ) 第一列的"字段"行中。

    IIf函数检查字段值是否为 null,如果为 null,则视为 0。 如果值不为 null, 则 IIf 函数调用 Val 函数以获取数字等效值。

  3. 在"排序"单元格中,选择"升序""降序"。

    升序排序显示顶部值最小的记录,底部显示具有最大值的记录。 降序排序与之相反。

  4. 在"开始"选项卡上的"排序和&组中,单击"切换筛选器"。

如果上述过程不起作用,可以尝试另一种方法来避免更改表的结构。 这涉及到包含较少数字和前导零的"填充"值。 例如,在应用排序之前,将值 11、2、2000 和 3 更改为 0011、0002、2000 和 0003。

返回页首

需要更多帮助?

扩展你的 Office 技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×