如果列A是"文本1"我试图获得列C的第二大值。或"文字2"。它似乎不断返回错误。我试过了:
{=large((if(A:A="Text 1",C:C),if(A:A="Text 2",C:C)),2)}
和
{=large(if(or(A:A="Text 1",A:A="Text 2"),C:C),2)}
没有成功。任何帮助将不胜感激。
答案 0 :(得分:0)
就个人而言,出于效率原因,我尽可能地远离阵列。下面是一个非数组公式的示例,您可以使用它来查找所需内容:
=AGGREGATE(14,6,(MaxRange)*(CriteriaRange=Criteria),2)
其中:
14 = Large, to find the maximum value
6 = Ignore error values - makes only the criteria values applicable
MaxRange = The range of values you want to pull the 2nd largest from
CriteriaRange = The criteria range you want to evaluate
Criteria = The criteria you want to match in the above range
2 = Specifies the 2nd largest: 1 would be largest etc
如果您没有注意到,这遵循=SUMPRODUCT
的相同原则。因此,为了处理多个AND
标准,您可以将它们相乘,即:
(MaxRange)*(CriteriaRange1=Criteria1)*(CriteriaRange2=Criteria2)
要执行OR
条件,请将它们添加到一起:
(MaxRange)*((CriteriaRange1=Criteria1)+(CriteriaRange2=Criteria2))
这导致您的公式为:
=AGGREGATE(14,6,(C:C)*((A:A="Text 1")+(A:A="Text 2")),2)