有没有办法将列表排序为 Excel 中优先级列表定义的元组?
例如,我会进行抽签来确定优先级:
Banana -> 1
Apple -> 2
Tomato -> 3
我有一张随机排序的数据表:
Tomato
Banana
Banana
Tomato
Apple
Tomato
Banana
Apple
Banana
Banana
现在我想按照优先级列表排序成元组以获得以下结果:
Banana
Apple
Tomato
Banana
Apple
Tomato
Banana
Tomato
Banana
Banana
只要数据列表中的值存在,元组就是完整的。
答案1
假设您的“随机排序数据”从 B1 开始,请输入以下公式:
C1 ----> =COUNTIF($B$1:B1,B1)+INDEX({1,2,3},MATCH(B1,{"Banana","Apple","Tomato"},0))/10
D1 ----> =RANK(C1,C:C,1)
F1 ----> =ROW()
G1 ----> =INDEX(B:B,MATCH(F1,D:D,0))
并向下拖动。完成。
想法:使用 rank() 与 countif() 和 index-match 来生成预期的主序列和次序列。
希望它能解决。(: