根据多个列创建排名/索引

时间:2018-12-17 19:12:03

标签: excel ranking

我希望使用多个列在excel中创建排名/索引。我已经尝试了等级和求和,但无法达到预期的结果。我有三列(其中一列是日期),并希望创建以下RANK;

Type    WO Ref  Begin Prod  RANK
510     00513   15/11/2018  1
510     00517   16/11/2018  2
500     04678   11/12/2018  1
500     04685   19/12/2018  2
500     05836   29/12/2018  3
500     05837   29/12/2018  4
510     00523   14/12/2018  1
510     00524   15/12/2018  2
510     04797   15/12/2018  3
500     00374   04/01/2019  1
500     05090   05/01/2019  2
500     05091   06/01/2019  3
510     05830   27/01/2019  1
510     05831   27/01/2019  2

排名应按以下顺序;

  1. 年/月(摘自'Bead Prod'-J列)
  2. “类型”(C列)
  3. “开始生产”(J列)
  4. “ WO Ref”(D列)

我开始使用以下嵌套的sumproduct对年份/月份和“类型” ...进行排名

=SUMPRODUCT(--(TEXT(J$2:J2,"yymm")=TEXT(J2,"yymm")),--((C$2:C2)=C2))

...但是,一旦我添加了“开始生产”日期,排名就仅更改为1和2?

2 个答案:

答案 0 :(得分:1)

想一想: 您可以引入一个新列并使用连接功能(https://support.office.com/en-us/article/concatenate-function-8f8ae884-2ca8-4f7a-b093-75d702bea31d

语法:CONCATENATE(text1,[text2],...)。

然后按此列排序。如果在排序后困扰您,则可以隐藏该列。

答案 1 :(得分:1)

此公式(在M2中输入)似乎适用于示例数据,但是否适用于实际数据则取决于其排序方式:

=IF(COUNTIFS(J2:J$2,">="&EOMONTH(J2,-1)+1,J2:J$2,"<="&EOMONTH(J2,0),C2:C$2,C2)=1,1,M1+1)