对我足够的抱怨:
考虑以下数据集:
ID, Date, Review, Review Status
1 01/02/18, "Cool", Positive
1 01/03/18, "Awesome", " Positive
1 01/01/18, "Cumbersome", Negative
1 01/02/18, "Rubbish!", " Negative
我目前正在使用数组类型索引匹配项,以根据一些条件获得最新的评论
我有两列,一列为肯定,一列为负。
我想在每个列中返回最新的正面评价,但是我不确定如何在以下公式中获得最长日期:
{=index(C2:C4, MATCH(1,(1 = A2:A4)*("Positive" = D2:D4)*(maxdatehere = B2:B4),0))}
我拥有的数据大约为7k行,并且是Google审核数据,几乎与上面的示例匹配。
我宁愿不使用VBA,因为我以前从未真正使用过(但会勉强使用)
因为这是excel,所以我还没有创建Google演示表,但是很乐意这样做,以便于专家和其他人(如果他们有一天在这里找到这样的方式)受益。
答案 0 :(得分:2)
如果您拥有Office 365:
=INDEX(C2:C5, MATCH(1,(1 = A2:A5)*("Positive" = D2:D5)*(MAXIFS(B:B,A:A,1,D:D,"Positive") = B2:B5),0))
退出编辑模式时,请按Ctrl-Shift-Enter而不是Enter进行确认。
如果您有2010年或以后,则:
=INDEX(C:C,AGGREGATE(15,7,ROW(C2:C5)/((A2:A5=1)*(D2:D5="Positive")*(AGGREGATE(14,7,B2:B5/((A2:A5=1)*(D2:D5="Positive")),1)=B2:B5)),1))
正常输入。