这一节,我们一起来学习Excel中另一个常用的函数--COUNTIF函数,看函数名就知道这是一个用来在做满足某条件的计数的函数。先来看一看它的语法:COUNTIF(range,criteria),参数说明如下:
Range | 需要进行读数的计数 |
Criteria | 条件表达式,只有当满足此条件时才进行计数 |
接下来看一个例子,代码如下:
HSSFSheet sheet1
=
hssfworkbook.CreateSheet(
"
Sheet1
"
);
HSSFRow row1 = sheet1.CreateRow( 0 );
row1.CreateCell( 0 ).SetCellValue( " 姓名 " );
row1.CreateCell( 1 ).SetCellValue( " 成绩 " );
HSSFRow row2 = sheet1.CreateRow( 1 );
row2.CreateCell( 0 ).SetCellValue( " 令狐冲 " );
row2.CreateCell( 1 ).SetCellValue( 85 );
HSSFRow row3 = sheet1.CreateRow( 2 );
row3.CreateCell( 0 ).SetCellValue( " 任盈盈 " );
row3.CreateCell( 1 ).SetCellValue( 90 );
HSSFRow row4 = sheet1.CreateRow( 3 );
row4.CreateCell( 0 ).SetCellValue( " 任我行 " );
row4.CreateCell( 1 ).SetCellValue( 70 );
HSSFRow row5 = sheet1.CreateRow( 4 );
row5.CreateCell( 0 ).SetCellValue( " 左冷婵 " );
row5.CreateCell( 1 ).SetCellValue( 45 );
HSSFRow row6 = sheet1.CreateRow( 5 );
row6.CreateCell( 0 ).SetCellValue( " 岳不群 " );
row6.CreateCell( 1 ).SetCellValue( 50 );
HSSFRow row7 = sheet1.CreateRow( 6 );
row7.CreateCell( 0 ).SetCellValue( " 合格人数: " );
row7.CreateCell( 1 ).SetCellFormula( " COUNTIF(B2:B6,\ " > 60 \ " ) " );
HSSFRow row1 = sheet1.CreateRow( 0 );
row1.CreateCell( 0 ).SetCellValue( " 姓名 " );
row1.CreateCell( 1 ).SetCellValue( " 成绩 " );
HSSFRow row2 = sheet1.CreateRow( 1 );
row2.CreateCell( 0 ).SetCellValue( " 令狐冲 " );
row2.CreateCell( 1 ).SetCellValue( 85 );
HSSFRow row3 = sheet1.CreateRow( 2 );
row3.CreateCell( 0 ).SetCellValue( " 任盈盈 " );
row3.CreateCell( 1 ).SetCellValue( 90 );
HSSFRow row4 = sheet1.CreateRow( 3 );
row4.CreateCell( 0 ).SetCellValue( " 任我行 " );
row4.CreateCell( 1 ).SetCellValue( 70 );
HSSFRow row5 = sheet1.CreateRow( 4 );
row5.CreateCell( 0 ).SetCellValue( " 左冷婵 " );
row5.CreateCell( 1 ).SetCellValue( 45 );
HSSFRow row6 = sheet1.CreateRow( 5 );
row6.CreateCell( 0 ).SetCellValue( " 岳不群 " );
row6.CreateCell( 1 ).SetCellValue( 50 );
HSSFRow row7 = sheet1.CreateRow( 6 );
row7.CreateCell( 0 ).SetCellValue( " 合格人数: " );
row7.CreateCell( 1 ).SetCellFormula( " COUNTIF(B2:B6,\ " > 60 \ " ) " );
执行结果如下:
我们可以看到,CountIf函数成功的统计出了区域“B2:B6”中成绩合格的人数(这里定义成绩大于60为合格)。
二、SUMIF
接下来,顺便谈谈另一个与CountIF类似的函数—SumIf函数。此函数用于统计某区域内满足某条件的值的求和(CountIf是计数)。与CountIF不同,SumIF有三个参数,语法为 SumIF(criteria_range, criteria,sum_range),各参数的说明如下:
criteria_range | 条件测试区域,第二个参数Criteria中的条件将与此区域中的值进行比较 |
criteria | 条件测试值,满足条件的对应的sum_range项将进行求和计算 |
sum_range | 汇总数据所在区域,求和时会排除掉不满足Criteria条件的对应的项 |
Code
执行结果如下:
如上图,SUMIF统计出了不同人一季度的销售额。