【发布时间】:2020-04-27 11:13:59
【问题描述】:
我正在尝试对我的 Excel 电子表格中包含数字、字符串和“空”的列进行排序。我的目标是对数字进行降序排序,然后是空的,然后是字符串降序。
4 行的示例数据如下表所示。
Columns("A:A").Sort key1:=Range("A2"), order1:=xlDescending
通过正常的列排序,我可以按正确的顺序获取数字和“空”(失败代码)。但是,在降序排序时,字符串一直出现在数字之前。
Initial Failed_Code Desired_Output
1 6566 String 6566
2 6566 700
3 700 700
4 String String
【问题讨论】:
-
我认为您需要 1) 进行排序 (Failed_Code),然后 2) 找到这三个组的边界,以及 3) 移动这些组。
-
您可以添加一个辅助列,例如
=IF(ISNUMBER(A1),RANK(A1,$A$1:$A$4,1),IF(ISBLANK(A1),-1,-2))并按降序对该列进行排序。 (A1:A4 中的数据,在辅助列中填写)