有没有一个Excel函数返回一个基于条件的值的范围?

为了更好地说明我在找什么,我会举一个例子。 设想一个包含两列的电子表格,优先级和值。

PV H x H x M x M y 

如果优先级为“H”,我要计算“x”值的数量。

Countif使用COUNTIF(Range,Criteria),所以我想我需要一种方法来改变基于P的范围,并能够在Value列中使用该范围的行。

有任何想法吗? 谢谢。

在Excel 2007和更高版本中,可以使用新的COUNTIFS工作表函数,如下所示:

 =COUNTIFS(A2:A5,"H",B2:B5,"x") 

(假设A1:B5中的数据)

 =SUM((A1:A5="H")*(B1:B5 = "x")) //returns 2 

请注意,这必须作为数组公式input(即按CTRL + SHIFT + ENTER

您可以在Excel中使用内置数据过滤

例如,用一个结合前两列的公式来设置第三列,

 =A2&"^"&B2 

然后根据你指定的条件对它进行“计数”

 =COUNTIF(C2:C5,"H^x")