小夥伴們好啊,COUNTIF函式 的作用是統計一個區域中符合指定條件的單元格個數,常用寫法為:
=COUNTIF(要檢查哪些區域, 要尋找什麽內容? )
接下來咱們就學習幾個COUNTIF函式的典型套用。
1、使用運算式作為統計條件
=COUNTIF(B2:B7,">5")
2、以單元格中的值作為統計條件
=COUNTIF(B2:B7,">"&D2)
3、 統計空白單元格數
=COUNTIF(B2:B10,"=")
4、統計非空單元格數
=COUNTIF(B2:B7,"<>")
5、統計包含關鍵字的個數
=COUNTIF(B2:B7,"*"&D1&"*")
6、統計各部門人數
如下圖所示,希望根據A~D列的數據,在G列統計出各部門的人數。
=COUNTIF(B:B,F3)
公式中的B:B,表示B列的整列參照。公式在B列整列中,統計與F3單元格內容相同的單元格個數。
7、統計身份證號碼是否重復
=IF(COUNTIF(B$2:B$9,B2&"*")>1,"重復","不重復")
COUNTIF函式在計算文本型數位時,會預設按數值型進行處理,但是Excel中的數位精度只有15位,並且身份證號碼是18位元,因此會把前15位相同的身份證全部辨識為相同的內容。
在第二參數後連線一個通配符&"*",利用數值不能使用通配符的特性,僅尋找包含B2單元格內容的文本,透過這樣變通的手段,COUTNIF函式就聽話啦。
8、按部門添加序號
如下圖所示,希望根據C列的部門,在A列添加序號,並且要求每個部門從1開始單獨編號。
=COUNTIF(C$1:C2,C2)
COUNTIF函式的第一參數為「C$1:C2」,其中的「C$1」部份釘選了行號,「C2」部份未釘選行號。當公式學習復制時,會依次變成「C$1:C3」、「C$1:C4」、「C$1:C5」……
第二參數「C2」,是公式所在單元格的左側相鄰單元格。
COUNTIF函式在這個動態擴充套件的範圍內,統計有多少個與左側相鄰單元格相同的單元格。
9、判斷所在部門
如下圖所示,B列是一些帶有部門名稱的混合字串,希望根據E列的對照表,從B列內容中提取出部門名稱。
=INDEX(E$2:E$6,MATCH(1,COUNTIF(B2,"*"&E$2:E$6&"*"),))
COUNTIF第一參數為B2單元格,統計條件為"*"&E$2:E$6&"*",統計條件中的星號表示通配符,也就是在B2單元格中,分別統計包含E$2:E$6部門名稱的個數,結果為:
{1;0;0;0;0}
再使用MATCH函式,在以上記憶體陣列中尋找1的位置。
最後使用INDEX函式,在E$2:E$6單元格區域中,根據MATCH函式的位置資訊,返回對應位置的內容。
10、統計有幾個部門參賽
如下圖所示,是某單位員工體育比賽的參賽人員名單,希望統計有多少個參賽部門,也就是C列的不重復部門數。
=SUMPRODUCT(1/COUNTIF(C2:C17,C2:C17))
COUNTIF函式的統計區域和統計條件都是C2:C17,表示在C2:C17單元格區域中,分別統計每個單元格出現的次數。結果為:
{2;2;3;3;3;……;4;4;4;4}
接下來用1除以以上記憶體陣列,得到這些記憶體陣列的倒數。{1/2;1/2;1/3;1/3;1/3;……;1/4;1/4;1/4;1/4}
最後再對這些倒數求和,如果某個單元格出現了兩次,這一步對應兩個二分之一,求和結果為1。如果某個單元格出現了三次,三個三分之一的求和結果也是1……。
11、按關鍵字查詢
如下圖所示,左側是員工資訊,F列是經理親戚。需要在H列提取出所有不是經理親戚的員工名單。
=FILTER(B2:C17,COUNTIF(F2:F5,B2:B17)=0)
先使用COUNTIF(F2:F5,B2:B17),統計B2:B17單元格區域中的姓名,在F列經理親戚列表中出現的次數,結果返回1或者0。
{0;1;0;0;0;1;0;0;1;0;0;1;0;0;0;0}
FILTER函式的篩選條件為以上記憶體陣列結果=0,篩選出B2:C17中符合條件的內容。
這個函式用得好,
領導把我當成寶。
一堆工作讓我搞,
薪資還是我最少。
圖文制作:祝洪忠