如何让 Excel 正确地重新排列行?

如何让 Excel 正确地重新排列行?

抱歉,问题太模糊了。让我解释一下。

我从公司的数据库中提取数据。其中一列是销售订单上的行号。但是,我们的系统的工作方式是,如果销售订单行项目由多个部分(一个组件)组成,那么每个部分都是一个具有自己编号方案的子集。

这些子项的编号方案在 Excel(以及普通人)中显示为小数。换句话说,SO 行 #38 中的子项 #12 在列中存储为“38.12”。因此,当我按此列排序时,我得到的顺序结果如下:

38.10 38.1 38.11 38.12 38.13

实际上,顺序应该是 38.1、38.2、38.3、...、38.10、38.11、38.12 等。我绝对不是程序员,但我认为对于你们中一些懂编程的人来说,这可能是一个简单的解决方案。我该如何正确排列这些行?

答案1

将列拆分为两列,并按小数列排序。这解释了如何 -http://excel.tips.net/Pages/T003836_Sorting_Decimal_Values.html

答案2

您可以通过使用 Excel 中的多列来解决这个问题。

取出 RAW 字符串,使用 SEARCH 函数查找小数点的位置。然后使用 LEFT 和 RIGHT 函数将小数点前后的字符串内容拆分到单独的单元格中。

最后,根据 LEFT 和 RIGHT 进行排序:

RAW   LEN   SEARCH LEFT RIGHT
31.1   4     3      31     1
31.2   4     3      31     2
31.3   4     3      31     3
31.4   4     3      31     4
31.5   4     3      31     5
31.11  5     3      31    11
31.12  5     3      31    12
31.14  5     3      31    14
31.25  5     3      31    25

SEARCH 列的公式:SEARCH(“.”,[RAW])

左列的公式:LEFT([RAW],[SEARCH]-1)

右列的公式:RIGHT([RAW],[LEN]-[SEARCH])

答案3

  1. 确保它们存储为文本而不是数字(选择单元格,右键单击,设置单元格格式,在“数字”选项卡中选择“文本”)。
  2. 数据 > 排序,确保标题行设置正确(查看选定的单元格),确定
  3. 现在您应该看到一个对话框询问“以下排序键可能无法按预期排序,因为它包含一些格式化为文本的数字:”,选择“对数字和存储为文本的数字分别进行排序”

完成此操作后,工具栏/功能区上的排序按钮应该可以按您希望的方式工作。

答案4

你会想要创建您自己的自定义列表在 Excel 中。创建自己的自定义列表后,您可以突出显示您的选择,单击排序按钮,然后选择自定义列表来对对象进行排序。

将其用作您的自定义列表:

.1
.2
.3
.4
.5
.6
.7
.8
.9
.10
.11
.12
.* 

请按照以下步骤创建您自己的自定义列表:

要创建自定义列表,如果您使用的是 Excel 2007,请按照以下步骤操作:

1.单击 Office 按钮,然后单击“Excel 选项”。Excel 显示“Excel 选项”对话框。

2.确保对话框左侧的“热门”被选中。

3.单击“编辑自定义列表”。Excel 显示“自定义列表”对话框并隐藏“Excel 选项”对话框。(单击此处查看相关图。)

4. 从对话框左侧的自定义列表列表中选择新列表选项。

5.在对话框的列表条目部分,开始输入元素的排序顺序。

6.完成后,单击添加按钮。

7.单击“确定”完成。

如果您使用的 Excel 2007 之前的 Excel 版本,请按照以下步骤操作:

1.从“工具”菜单中选择“选项”。Excel 显示“选项”对话框。

2.确保已选择“自定义列表”选项卡。(单击此处查看相关图表。)

3. 从自定义列表列表中选择新列表选项。

4.在对话框的列表条目部分,开始输入元素排序的顺序。

5.完成后,单击添加按钮。

6.单击“确定”完成。

相关内容