在Excel中对数据进行排序的6种方法

这一系列技巧涵盖了Excel中排序数据的不同方法。 具体信息可以在以下页面找到:

  1. 使用分类和过滤器或热键快速排序单列
  2. 排序在多列上
  3. 按日期或时间排序
  4. 按星期,月份或其他自定义列表排序
  5. 按行排序 - 重新排列列

选择要排序的数据

在对数据进行排序之前,Excel需要知道要排序的确切范围 ,通常Excel在选择相关数据的区域方面非常出色 - 只要输入相关数据时,

  1. 相关数据区域内不留空白行或列 ;
  2. 相关数据的区域之间留下空白的行和列。

Excel甚至会相当准确地确定数据区域是否有字段名称,并将这一行从要排序的记录中排除。

但是,允许Excel选择要排序的范围可能是有风险的 - 尤其是对于难以检查的大量数据。

为确保选择正确的数据,请在开始排序之前突出显示范围。

如果要重复排序相同的范围,最好的方法是给它一个名称

05年1月

排序键和排序顺序

在Excel中快速排序一列。 ©Ted French

排序需要使用排序键和排序顺序。

排序键是要排序的一列或多列中的数据。 它由列标题或字段名称标识。 在上面的图片中,可能的排序键是学生ID,姓名年龄程序月份开始

在快速排序中,单击包含排序键的列中的单个单元格就足以告诉Excel排序键是什么。

对于文本或数字 ,排序顺序的两个选项是升序降序

在功能区的“ 主页”选项卡上使用“ 排序和筛选”按钮时, 下拉列表中的排序顺序选项将根据所选范围中的数据类型而变化。

使用分类和过滤器快速排序

在Excel中,可以使用功能区主页”选项卡上的“ 排序和筛选”按钮进行快速排序。

执行快速排序的步骤是:

  1. 点击包含排序键的列中的一个单元格
  2. 如有必要,请单击功能区的“主页”选项卡
  3. 点击Sort&Filter按钮打开排序选项的下拉菜单
  4. 点击两个选项中的一个按升序或降序排序
  5. 检查以确保数据排序正确

使用功能区热键排序数据

Excel中没有用于排序数据的键盘快捷键组合。

有什么可用的热键,它们允许您使用击键而不是鼠标指针来选择功能区主页选项卡上列出的相同选项。

使用热键以升序排列

  1. 点击排序键列中的一个单元格
  2. 按下键盘上的以下按键:
  3. Alt HSS
  4. 数据表应按所选列从A到Z /从最小到最大排序

热键翻译成:
“Alt”键>“主页”选项卡>“编辑”组>“排序和筛选”菜单>“从最小到最大排序”选项。

使用热键以降序排列

使用热键以降序排序的步骤与针对升序排列的步骤相同,但热键组合为:

Alt HSO

热键翻译成:
“Alt”键>“主页”选项卡>“编辑”组>“排序和过滤”菜单>“从最大到最小”选项。

05年05月

在Excel中排序多个数据列

在多列上排序数据。 ©Ted French

除了基于单列数据执行快速排序外,Excel的自定义排序功能允许您通过定义多个排序键来对多列进行排序。

在多列排序中,通过在“排序” 对话框中选择列标题来识别排序键。

与快速排序一样,排序键通过在包含排序键的表中标识列标题或字段名称来定义。

排序多列示例

在上面的例子中,按照以下步骤对两列数据中的范围 H2到L12中的数据进行排序 - 首先按名称排序,然后按年龄排序。

  1. 突出显示要排序的单元格的范围
  2. 单击功能区的“ 主页”选项卡。
  3. 点击功能区上的Sort&Filter图标打开下拉列表。
  4. 单击下拉列表中的自定义排序以显示排序对话框
  5. 在对话框中的标题下,从下拉列表中选择名称 ,首先按名称列对数据进行排序
  6. 排序选项保留设置为 - 因为排序基于表中的实际数据
  7. 排序顺序标题下,从下拉列表中选择Z到A ,以降序排列名称数据
  8. 在对话框的顶部,点击添加级别按钮添加第二个排序选项
  9. 对于第二个排序键,在标题下,从下拉列表中选择年龄 ,按年龄列对具有重复名称的记录进行排序
  10. 在“ 排序顺序”标题下,从下拉列表中选择Largest to Smallest以按降序排列Age数据
  11. 在对话框中单击确定关闭对话框并对数据进行排序

作为定义第二个排序键的结果,在上面的示例中, Name字段具有相同值的两个记录使用Age字段以降序进一步排序,从而生成了学生A的记录。第二名A. Wilson的纪录19岁。

第一行:列标题或数据?

上例中选择用于排序的数据范围包括第一行数据上方的列标题。

Excel检测到该行包含的数据与后续行中的数据不同,因此它假定第一行是列标题并调整了“ 排序”对话框中的可用选项以包含它们。

Excel用来确定第一行是否包含列标题的一个标准是格式化。 在上面的示例中,第一行中的文本是不同的字体,它与其余行中的数据颜色不同。 它也与下面的行分开一个厚边框。

Excel使用这种差异来决定第一行是否是标题行,并且它很好地使它正确 - 但它不是绝对无误的。 如果出错,排序对话框包含一个复选框 - 我的数据有标题 - 可用于覆盖此自动选择。

如果第一行不包含标题,Excel将使用列字母(如列D或列E)作为“ 排序”对话框的“ 列”选项中的选项。

05年3月

在Excel中按日期或时间排序数据

在Excel中按日期排序。 ©Ted French

除了按字母顺序排列文本数据或从最大到最小的数字,Excel的排序选项还包括排序日期值。

可用于日期的排序顺序是:

快速排序与排序对话框

由于日期和时间只是格式化的数字数据,对于单列上的排序(例如上图中的示例中的“ 借用日期”) ,快速排序方法可以成功使用。

对于涉及多列日期或时间的排序,需要使用排序 对话框 - 就像在对多列数字或文本数据进行排序时一样。

按日期示例排序

要按升序执行按日期快速排序 - 从最早到最新 - 对于上图中的示例,步骤为:

  1. 突出显示要排序的单元格的范围
  2. 单击功能区的“ 主页”选项卡
  3. 点击功能区上的Sort&Filter图标打开下拉列表
  4. 单击列表中的排序最旧到最新选项可按升序对数据进行排序
  5. 记录应按表格顶部“ 借入”列中的最早日期排序

日期和时间存储为文本

如果按日期排序的结果未按预期结果,则包含排序关键字的列中的数据可能包含以文本数据而非数字(日期和时间仅为格式化数字数据)存储的日期或时间。

在上图中,A. Peterson的记录最终列在名单的底部,根据借款日期 - 2014年11月5日 - 记录应该放在A Wilson的记录之上,这也是借款日期为11月5日。

出现意外结果的原因是,A. Peterson的借款日期是以文本形式存储的,而不是以数字形式存储

混合数据和快速排序

如果使用快速排序方法,如果包含文本和数字数据的记录混合在一起,则Excel会分别对数字和文本数据进行排序 - 将带有文本数据的记录置于排序列表的底部。

Excel也可能在排序结果中包含列标题 - 将它们解释为另一行文本数据而不是数据表的字段名称。

排序警告 - 排序对话框

如上图所示,如果使用排序对话框,即使对一列进行排序,Excel也会显示一条消息,提示您遇到以文本形式存储的数据,并为您提供以下选择:

如果您选择第一个选项,Excel将尝试将文本数据放在排序结果的正确位置。

选择第二个选项,Excel会将包含文本数据的记录放置在排序结果的底部 - 就像快速排序一样。

04年05月

在Excel中按星期几或按月排序数据

在Excel中按自定义列表排序。 ©Ted French

使用Excel使用相同的内置自定义列表按一周中的某几天或一年中的几个月进行排序,以便使用填充句柄将日或月添加到工作表

这些列表允许按照时间顺序排列,而不是按字母顺序排列。

在上面的例子中,数据按照学生开始在线学习计划的月份排序。

与其他排序选项一样,自定义列表的排序值可以按升序显示(周日至周六/ 1月至12月)或降序显示(周六至周日/ 12月至1月)。

在上面的图片中,按照以下步骤在一年的几个月内对 H2到L12 范围内的数据样本进行排序:

  1. 突出显示要排序的单元格的范围
  2. 单击功能区的“ 主页”选项卡。
  3. 点击功能区上的Sort&Filter图标打开下拉列表。
  4. 点击下拉列表中的自定义排序以显示排序 对话框
  5. 在对话框中的标题下,从下拉列表中选择月份以按年份排序数据
  6. 排序选项保留设置为 - 因为排序基于表中的实际数据
  7. 排序顺序标题下,单击默认A到Z选项旁边的向下箭头以打开下拉菜单
  8. 在菜单中,选择“ 自定义列表”以打开“ 自定义列表”对话框
  9. 在对话框的左侧窗口中,单击列表中的一次: 1月,2月,3月,4月...选择它
  10. 单击确定确认选择并返回到排序对话框

  11. 所选清单 - 一月,二月,三月,四月 -将显示在订单标题下

  12. 单击“确定”关闭对话框并按一年中的月份对数据进行排序

注意 :默认情况下,自定义列表仅在自定义列表对话框中以升序显示。 在选择所需列表后,使用自定义列表以降序对数据进行排序,以使其显示在“ 排序”对话框的“ 订单”标题下:

  1. 点击显示列表旁边的向下箭头 - 例如1月,2月,3月,4月...打开下拉菜单
  2. 在菜单中,选择以降序显示的自定义列表选项 - 例如12月,11月,10月,9月......
  3. 单击确定关闭对话框并使用自定义列表以降序对数据进行排序

05年05月

按行排序以重新排列Excel中的列

按行排序以重新排列列。 ©Ted French

如前面的排序选项所示,数据通常使用列标题或字段名称进行排序,结果是对整行或数据记录进行重新排序。

在Excel中,较少使用的排序选项是按行进行排序,该排序可以在工作表中重新排列列的顺序从左到右

按行排序的一个原因是匹配不同数据表之间的列顺序。 使用相同的从左到右排列的列,比较记录或在表格之间复制和移动数据更容易。

自定义列顺序

然而,由于值的升序和降序排序选项的限制,很少会以正确的顺序获得列。

通常,必须使用自定义排序顺序,并且Excel包含用于按单元格或字体颜色或条件格式图标进行排序的选项。

这些选项,如本页底部所述,仍然是相当劳动密集型的,并不便于使用。

告诉Excel列的顺序的最简单方法可能是在数据表的上面或下面添加一行,其中包含数字1,2,3,4,这些数字表示列的顺序从左到右。

然后按行排序就成了一个简单的事情,即通过包含数字的行将列从最小到最大排序。

排序完成后, 添加的一行数字可以轻松删除

按行排序示例

在Excel排序选项中用于本系列的数据示例中, 学生ID列始终位于左侧,其次是名称 ,然后是Age

在这种情况下,如上图所示,列已被重新排序,以便节目列首先在左边,然后是月份开始 ,名称等。

以下步骤用于将列顺序更改为上图中显示的顺序:

  1. 包含字段名称的上方插入空白行
  2. 在这一新行中,输入以下从左至右的数字
    列H:5,3,4,1,2
  3. 突出显示H2到L13的范围
  4. 单击功能区的“ 主页”选项卡。
  5. 点击功能区上的Sort&Filter图标打开下拉列表。
  6. 单击下拉列表中的自定义排序以显示排序 对话框
  7. 在对话框的顶部,点击选项打开排序选项对话框
  8. 在第二个对话框的“方向”部分中,单击从左向右排序以在工作表中从左到右排列列的顺序
  9. 单击确定关闭此对话框
  10. 随着方向的改变, Sort对话框中的Column标题变为Row
  11. 在行标题下,选择行2 进行排序 - 包含自定义数字的行
  12. 排序选项保留设置为
  13. 在“ 排序顺序”标题下,从下拉列表中选择“ 最小到最大” ,以按升序对第2行中的数字进行排序
  14. 单击“确定”关闭对话框并按第2行中的数字从左向右排列列
  15. 列的顺序应以Program开始,然后是Month StartedName等。

使用Excel的自定义排序选项重新排列列

如上所述,尽管Excel中的“排序”对话框中提供了自定义排序,但在重新排列工作表中的列时,这些选项并不便于使用。

在“排序”对话框中创建自定义排序顺序的选项是按以下方式排序数据:

而且,除非每列已经应用了独特的格式 - 例如不同的字体或单元格颜色,那么需要将格式添加到要重新排序的每列的同一行中的单个单元格中。

例如,要使用字体颜色重新排列上图中的列

  1. 点击每个字段名称并更改每个字体的颜色 - 例如红色,绿色,蓝色等。
  2. 在排序对话框中,将排序选项设置为字体颜色
  3. 在“订单”下,手动设置字段名称颜色的顺序以匹配所需的列顺序
  4. 排序后,重置每个字段名称的字体颜色