今天老祝和大家一起學習COUNTIF函數,這個函數隻有兩個參數,第一個參數是要對其進行計數的數據區域,這裡隻能是一個或多個單元格的範圍引用,第二個參數是進行計數的條件,可以是數字、表達式、單元格引用或文本字符串。
這個函數的幫助文件比較簡單,但是在實際的應用中,通過對第二參數的變化,可以滿足我們多種計數需求。
下面咱們就用一組數據,來學習一下第二參數的常用設置。
1、=COUNTIF(A2:A15,12)
用于返回A2:A15單元格區域中,等于12的單元格數量。
2、=COUNTIF(A2:A15,"<0")
用于返回A2:A15單元格區域中,負值的單元格數量。
3、=COUNTIF(A2:A15,"<>0")
用于返回A2:A15單元格區域中,不等于0的單元格數量。
4、=COUNTIF(A2:A15,A2)
用于返回A2:A15單元格區域中,等于單元格A2中内容的單元格數量。
5、=COUNTIF(A2:A15,">"&A2)
用于返回A2:A15單元格區域中,大于單元格A2中内容的單元格數量。
注意這裡在比較運算符“>”和單元格引用“A2”之間,用文本連接符“&”進行連接。而不能寫成=COUNTIF(A2:A15,> A2)。
6、=COUNTIF(A2:A15,"????")
用于返回A2:A15單元格區域中,4個字符長度的文本個數。
公式中的“?”是占位符,一個“?”表示一個字符長度。
7、=COUNTIF(A2:A15,"*e*")
用于返回A2:A15單元格區域中,包含字符"e"内容的單元格數量。
公式中的“*”也是占位符的一種,一個“*”表示任意字符長度。注意這裡的統計結果,不區分條件字符"e"的大小寫。
8、=COUNTIF(A2:A15,"e*")
用于返回A2:A15單元格區域中,以字母"e"開頭内容的單元格數量。這裡的統計結果,也不區分條件字符"e"的大小寫。
9、=COUNTIF(A2:A15,TODAY())
用于返回A2:A15單元格區域中,等于當前日期的單元格數量。
TODAY()返回的結果是當前的系統日期。
10、=COUNTIF(A2:A15,"<>")
返回A2:A15單元格區域中不為空的單元格個數,這裡的結果包含A13單元格的假空""。
11、=COUNTIF(A2:A15,">=!")
判斷條件">=!"表示不等于“真空”的文本。返回A2:A15單元格區域中非空文本個數,也就是A6 A7 A9 A10單元格。
12、=COUNTIF(A2:A15,TRUE)
返回A2:A15單元格區域中邏輯值為“TRUE”的個數。(A11單元格)
13、=COUNTIF(A2:A15,"=")
返回A2:A15單元格區域中真空單元格個數(A15單元格)
COUNTIF函數隻能針對單個條件進行統計,通過解法的變通,可以統計同一區域中由兩個邊界值所指定的數據個數。
如下圖所示,要求統計出銷售金額大于50000且小于100000的人數。
可以使用
=SUM(COUNTIF(B2:B10,{">50000";">100000"})*{1;-1})
在銷售金額中,">50000"的記錄數一定包含">100000"的記錄,因此該公式使用常量數組{">50000";">100000"}作為統計條件,即分别對">50000"和">100000"的數據進行統計,再利用乘以{1;-1}實現兩者相減,最後得出結果為3。
COUNTIF函數第二參數設置靈活多樣,還被廣泛應用到數組公式中,以下圖為例,要統計數據區域中的不重複個數,想一想應該怎麼計算呢?
答案來了:
可以使用這個數組公式(别忘了,數組公式需要按下Shift Ctrl Enter才可以哦):
{=SUM(1/COUNTIF(A2:A14,A2:A14))}
怎麼去理解這個公式呢?
{=SUM(1/COUNTIF(區域,區域))}是計算區域中不重複值個數的經典公式。
1、公式中“COUNTIF(A2:A14,A2:A14)”部分是數組計算,運算過程相當于:
=COUNTIF(A2:A14,A2)
=COUNTIF(A2:A14,A3)
……
=COUNTIF(A2:A14,A14)
結果為數組:
{2;2;1;1;2;1;1;1;1;2;2;2;1}
表示區域中每個單元格數據出現的個數。
2、“1/{2;2;1;1;2;1;1;1;1;2;2;2;1}”部分的計算結果為:
{0.5;0.5;1;1;0.5;1;1;1;1;0.5;0.5;0.5;1}
用1除以個數,是本公式的核心,要結合前後計算才能領會好它的作用。
為便于理解,把這一步的結果整理一下,用分數代替小數,結果為:{1/2;1/2;1;1;1/2;1;1;1;1;1/2;1/2;1/2;1}
如果單元格的值在區域中重複出現兩次,這一步的結果就有兩個1/2。如果單元格的值在區域中重複出現3次,結果就有3個1/3,如此類推。
3、最後用SUM函數求和,計算結果為10。
怎麼樣,你學會了嗎?
,
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!