我想将一个单元格的值与之前的所有单元格进行比较,之前单元格的范围取决于条件。
例如,在下图中,我有两个人亚当和詹姆斯。我想将B2与B1进行比较,然后将B3与B1和B2进行比较,依此类推。但是当谈到詹姆斯时,我想比较B9和B8,B10与B8和B9,但不是B1-B7,因为它们属于亚当。
我已经使用了之前的单元格比较逻辑,但没有使用Name条件(D列中的公式)。我怎么能这样做?
预期结果:
答案 0 :(得分:2)
如果您拥有Office 365 Excel或AGGREGATE()(如果您的时间晚于2007年)或者数组公式(如果您在2007年之前),则需要我们MAXIFS()。
MAXIFS()
=IF(A2=A1,IF(B2<MAXIFS(B$1:B1,A$1:A1,A2),"Greater","Lesser"),0)
AGGREGATE()
=IF(A2=A1,IF(B2<AGGREGATE(14,6,B$1:B1/(A$1:A1=A2),1),"Greater","Lesser"),0)
数组公式
=IF(A2=A1,IF(B2<MAX(IF(A$1:A1=A2,B$1:B1)),"Greater","Lesser"),0)
必须使用Ctrl-Shift-Enter确认是否为数组公式。
编辑,适用于所有版本 (恕我直言)
或者,由于您的数据已排序,您可以使用以下公式:
=IF(A2=A1,IF(B2<MAX(INDEX(B:B,MATCH(A2,A:A,0)):INDEX(B:B,ROW()-1)),"Greater","Lesser"),0)