2017-02-13 74 views
0

我需要一些帮助,为以下情况创建RankIf公式。Rank Array Array

在我的表我已在

|UniqueRank|LkUp| 
|12  |0 | 
|13  |1 | 
|5   |0 | 
|1   |2 | 

我试图创建一个第三列,将等级字段UniqueRank如果场LkUp确实在此就不= 0作为列标题所暗示的,所有值以下列是唯一的。

我写了下面的数组公式:

=IF(tblPriorityMatrix[LkUp]<>0,RANK.EQ(tblPriorityMatrix[Unique Rank],tblPriorityMatrix[@[Unique Rank]]),0) 

这将返回0,其中,所述标准是不满足,但#N/A其中它被满足。

有没有人有任何想法呢?

非常感谢

回答

1

使用SUMPRODUCT:

=IF(tblPriorityMatrix[@LkUp]<>0,SUMPRODUCT((tblPriorityMatrix[UniqueRank]>tblPriorityMatrix[@UniqueRank])*(tblPriorityMatrix[LkUp]<>0))+1,0) 

把它改成升序只是改变><:为

=IF(tblPriorityMatrix[@LkUp]<>0,SUMPRODUCT((tblPriorityMatrix[UniqueRank]<tblPriorityMatrix[@UniqueRank])*(tblPriorityMatrix[LkUp]<>0))+1,0) 

enter image description here

+0

斯科特您好,感谢回复。这似乎工作,但按降序排列,你如何改变这个升序? – PeteBradshaw

+0

@PeteBradshaw看到编辑 –

+0

嗨斯科特,当你指出它很明显:)很多,非常感谢帮助,这是一种魅力! – PeteBradshaw