Excel包含排序功能,可让您轻松地按最多三列对数据列表进行排序。但是,如果数据列表很大或很复杂,则可能要按三列以上进行排序。有几种方法可以完成此操作。

假设您要对五列进行排序,第一种方法是在排序时只执行两次。如果要按A,B,C,D和E列的顺序对数据进行排序,则可以使用C,D和E列执行第一个排序。按顺序排列后,按A和B列进行排序结果是您的整个数据列表是有序的。

与此密切相关的是,您可以使用工具栏上的排序工具对五列进行排序。首先,在E列中选择一个单元格,然后单击“升序排列”或“降序排列”工具。通过依次在其他各列(D,C,B和A)中选择一个单元格,然后单击适当的工具,重复此过程。在此迭代过程结束时(只需五次快速单击排序工具),整个列表就会按照您想要的顺序排列。

如下所述进行排序时,需要牢记一些重要事项:列表数据的字符会影响所执行排序的质量。如果您的数据包含空单元格,错误值或数字格式为文本,则Excel可能不会按照您期望的方法对数据进行排序。解决方案是“标准化”您的数据(例如,确保数字确实是数字,而不是格式化为文本的数字),然后再次进行排序。

另一种解决方案是为您的数据创建一个“排序列”。如果您的数据全部为文本,或者可以轻松地将其转换为基于文本的格式进行排序,则此方法非常有用。在这种情况下,您可以将A到E列的内容合并到F列中,然后按单个列进行排序:F。可以在F列中使用这种类型的公式:

=A1 & B1 & C1 & D1 & E1

如果其中一列包含日期,则需要按照以下公式将日期转换为一致的文本格式:

=A1 & B1 & C1 & TEXT(D1,"yyyymmdd") & E1

如果其中一列包含数值,则可以使用类似的TEXT函数构造对它们进行标准化,该构造用前导零​​填充该值:

=A1 & TEXT(B1,"000000") & C1 & D1 & E1

如果您进行了大量排序,并且不想使用Excel的内置排序例程,则应研究第三方排序功能。排序算法是数学的一个有趣分支,可以通过Excel函数实现一些非常流行的算法(例如,壳排序,交换排序,冒泡排序等)。这些功能如何在您的系统上使用取决于开发人员实现它们的方式。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(2255)适用于Microsoft Excel 97、2000、2002和2003。