我在 Windows 7 上使用 Excel 2013。
我有两列这样的数据:
Name Value
aaa 1
bbb 123
ccc 81
... ...
我需要将这些数据按特定顺序排序,看起来像是随机的,所以我不能使用字母表等基本标准来排序。行数相当多,所以手动排序没有意义。
名称中没有重复项column
。
我尝试使用Custom list
Excel 排序工具,但显然我的列表太长,无法放入其中。(列表在某个时候会被截断。)
我有第三列,其中包含所需的数据顺序:
Desired order
bbb
aaa
ccc
...
我如何才能按照第三行给出的顺序对数据进行排序?
答案1
类似于@Kyle 在他的评论,则应添加一个Name
在列表中查找的列Desired order
。但我建议使用MATCH
而不是VLOOKUP
。
如果您的数据在A:B
,并且订单列表在Z:Z
,那么的公式C2
将是:
=MATCH($A2,$Z:$Z,0)
如果 aName
不在列表中,它将返回错误#N/A
。您可能希望看到这一点,因为您希望事物以特定的顺序随机排列,而不是实际的随机顺序。否则,我们可以将所有这些推到最后:
=IFERROR(MATCH($A2,$Z:$Z,0),COUNTA($Z:$Z)+1)
...或者把它们放在中间的某个地方:
=IFERROR(MATCH($A2,$Z:$Z,0),RANDBETWEEN(1,COUNTA($Z:$Z)))
无论您选择哪条路线获取列表,您都可以根据新的数字列进行排序以获得所需的顺序。