countif criteria_range和criteria中的名称引用

时间:2017-05-07 13:16:33

标签: excel excel-formula excel-2007 countif

Sheet1包含列' A'。

中的IP地址

样品:

    A
1.1.1.2
1.1.1.3
1.1.1.3
1.1.1.3
1.1.1.2
1.1.1.2

我将列的名称引用为:' ip'。对于ips,我已将名称引用为' ip1 _'对于1.1.1.2和' ip2 _'对于1.1.1.3

我想计算多少次" 1.1.1.3"和" 1.1.1.2"落在A栏。

我使用了countif公式:

=countif(ip,ip1_,ip,ip2_)

但结果是' 0'。如果我只使用一个标准,那么它会给出准确的计数,但是在多个标准上,其中包含' Criteria_range'和'标准'它没有用。

我在表1中有ip地址,所以写长单元格引用就好了

=countif(sheet1!A:A,"1.1.1.2",sheet1!A:A,"1.1.1.3")

并且在标准中编写完整的Ip地址会引发错误。

2 个答案:

答案 0 :(得分:2)

将COUNTIF包装在SUM中,并使OR条件成为字符串常量数组。

=SUM(COUNTIF(A:A, {"1.1.1.2","1.1.1.3"}))

这是数组(即CSE)公式。请注意,为了演示目的,我将您的一个值更改为1.1.1.4。

根据IP范围内的子网数量,以下通配符语法可能更适合您。

=SUM(COUNTIF(A:A, {"*.2","*.3"}))

这种将OR条件应用于COUNTIF 的方法不能与字符串常量数组中的命名范围一起使用。但是,对于两个单元命名区域(例如ips_)中的1.1.1.2和1.1.1.3,它可以作为CSE的数组公式 -

=SUM(COUNTIF(ip, ips_))

enter image description here

答案 1 :(得分:1)

对于非连续范围内的命名范围:

=SUMPRODUCT(COUNTIFS(ip,CHOOSE({1,2},ip1_,ip2_)))

此致