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地址会引发错误。
答案 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_))
答案 1 :(得分:1)
对于非连续范围内的命名范围:
=SUMPRODUCT(COUNTIFS(ip,CHOOSE({1,2},ip1_,ip2_)))
此致