我需要根据分数将申请人分类到不同的框中。我已经计算了所有框中的匹配分数,并希望首先选择最匹配的申请人。
我正在寻找创建可自动执行该过程的VBA代码。 样本数据:
Appl | Box1 | Box2 | Box3
1 | 316.67 | 453.57 | 244.44
2 | 183.33 | 196.43 | 366.67
3 | 50.00 | 463.10 | 244.44
4 | 16.67 | 16.67 | 61.11
理想情况下,对申请人进行2倍排序后,他们将从列表中删除。我正在考虑使用等级函数,但是不能将我的头包裹在双重排序上... 有什么建议吗?
所需结果:
| Box1 | Box2 | Box3
| Appl 1 | Appl 3 | Appl 2
| Appl 3 | Appl 2 | Appl 1
答案 0 :(得分:0)
使用您的示例;与A1:D5
在示例数据的同一工作表的相邻单元格中插入Box1
,Box2
和Box3
标头。
将此公式放在Box1下的单元格中
=INDEX(A2:A5,MATCH(LARGE(B2:B5,1),B2:B5,FALSE),1)
公式的LARGE
部分将在B2:B5
中找到最大值,1
标识最大值。
如果将其替换为2
,它将标识范围LARGE(B2:B5,2)
例如,可以为Box2
和Box3
范围修改MATCH函数;
=INDEX(A2:A5,MATCH(LARGE(C2:C5,1),C2:C5,FALSE),1)
如果要获得第二个最大值,只需在LARGE函数中更改1
即可;例如; =INDEX(A2:A5,MATCH(LARGE(C2:C5,
2 ),C2:C5,FALSE),1)
图片示例: