4.2 使用IS函数进行各种判断
函数7:ISBLANK函数(检测单元格是否为空)
函数功能
ISBLANK函数用于判断指定值是否为空值。
函数语法
ISBLANK(value)
参数解释
value:表示要检验的值。参数value可以是空值(空单元格)、错误值、逻辑值、文本、数字、引用值,或者引用要检验的以上任意值的名称。
实例解析
实例156 标注出缺考学生
表格中统计了学生的考试成绩,其中有缺考情况出现(无成绩为缺考)。使用ISBLANK函数配合IF函数可以将缺考信息标识出来。
选中C2单元格,在公式编辑栏中输入公式:
按Enter键即可根据判断结果是否显示出“缺考”文字。
选中C2单元格,拖动右下角的填充柄向下复制公式,可以批量进行“缺考”标注,如图4-12所示。
图4-12
公式解析
① 判断B2单元格是否是空值,如果是,返回TRUE,不是,返回FALSE。
② 如果①步结果为TRUE,返回“缺考”,否则返回空。
实例解析
实例157 统计员工缺勤人数
利用SUM函数和ISBLANK函数,可以根据已知的员工签到标记统计出缺勤总人数。
选中D2单元格,在公式编辑栏中输入公式:
按Ctrl+Shift+Enter组合键即可返回缺勤人数合计值,如图4-13所示。
图4-13
公式解析
① 判断B2∶B11单元格区域中是否为空值,如果是,返回TRUE,不是,返回FALSE,返回的是一个数组。
② 将①步的数组依次乘以1,TRUE乘以1等于1,FALSE乘以1等于0,然后再使用SUM函数对数组求和。
函数8:ISNUMBER函数(检测给定值是否是数字)
函数功能
ISNUMBER函数用于判断指定数据是否为数字。
函数语法
ISNUMBER(value)
参数解释
value:表示要检验的值。参数value可以是空值(空单元格)、错误值、逻辑值、文本、数字、引用值,或者引用要检验的以上任意值的名称。
实例解析
实例158 当出现无法计算时检测数据是否是数值数据
在如图4-14所示中,可以看到当使用SUM函数计算总销售数量时,计算结果是错误的。这时可以用ISNUMBER函数来检测数字是否是数值数据,通过返回结果可以有针对性地修整数据。
图4-14
选中C2单元格,在公式编辑栏中输入公式:
按Enter键,然后向下复制C2单元格的公式,当结果为FALSE时则表示为非数值数据,如图4-15所示。
图4-15
提示
通过检查数据发现B3与B6单元格中数据中间都出现了空格,所以导致在进行数据计算时无法计算在内。
实例159 统计实考人数
本例表格中统计了学生成绩,并对缺考情况进行了标记。使用ISNUMBER函数配合SUM函数可以快速统计出实考人数的合计值。
选中D2单元格,在公式编辑栏中输入公式:
按Ctrl+Shift+Enter组合键即可统计出实考人数,如图4-16所示。
图4-16
公式解析
① 判断B2∶B12单元格区域中是否为数字,如果是,返回TRUE,不是,返回FALSE,返回的是一个数组。
② 将①步的数组依次乘以1,TRUE乘以1等于1,FALSE乘以1等于0,然后再使用SUM函数对数组求和。
函数9:ISTEXT函数(检测给定值是否是文本)
函数功能
ISTEXT函数用于判断指定数据是否为文本。
函数语法
ISTEXT(value)
参数解释
value:表示要检验的值。参数value可以是空值(空单元格)、错误值、逻辑值、文本、数字、引用值,或者引用要检验的以上任意值的名称。该参数是必需的。
实例解析
实例160 统计缺考人数
本例表格统计了学生的总成绩,并对缺考的学生进行了缺考标记,要求统计出缺考人数的合计值。
选中D2单元格,在公式编辑栏中输入公式:
按Ctrl+Shift+Enter组合键即可统计出缺考人数,如图4-17所示。
图4-17
公式解析
① 判断B2∶B12单元格区域中是否为文本,如果是,返回TRUE,不是,返回FALSE,返回的是一个数组。
② 将①步的数组依次乘以1,TRUE乘以1等于1,FALSE乘以1等于0,然后再使用SUM函数对数组求和。
函数10:ISNONTEXT函数(检测给定值是否不是文本)
函数功能
ISNONTEXT函数用于判断指定数据是否为非文本。
函数语法
ISNONTEXT(value)
参数解释
value:表示要检验的值。参数value可以是空值(空单元格)、错误值、逻辑值、文本、数字、引用值,或者引用要检验的以上任意值的名称。
实例解析
实例161 统计实考人数
沿用ISTEXT函数的例子,如果要统计实考人数,只要使用ISNONTEXT函数即可。
选中D2单元格,在公式编辑栏中输入公式:
按Ctrl+Shift+Enter组合键,则可以统计出实考人数,如图4-18所示。
图4-18
函数11:ISEVEN函数(判断数字是否是偶数)
函数功能
ISEVEN函数用于判断指定值是否为偶数。
函数语法
ISEVEN(number)
参数解释
number:指定的数值,如果number为偶数,返回TRUE,否则返回FALSE。
实例解析
实例162 根据工号返回性别信息
某公司为有效判定员工性别,规定员工编号上最后一位数如果为偶数表示性别为“女”,反之为“男”,根据这一规定,可以使用ISEVEN函数来判断最后一位数的奇偶性,从而确定员工的性别。
在C2单元格的公式编辑栏中输入公式:
按Enter键即可按工号的最后一位数来判断性别。
将光标移到C2单元格的右下角,待光标变成十字形状后,按住鼠标左键向下拖动进行公式填充,即可返回其他人员的性别,如图4-19所示。
图4-19
公式解析
① 从右侧开始提取B2单元格中的一个字符。
② 判断步骤①的结果是否是偶数。
③ 如果步骤②的结果为TRUE,返回“女”,否则返回“男”。
函数12:ISODD函数(判断数字是否是奇数)
函数功能
ISODD函数用于判断指定值是否为奇数。
函数语法
ISODD(number)
参数解释
number:表示待检验的数值。如果number不是整数,则截尾取整。如果参数number不是数值型,函数ISODD返回错误值“#VALUE!”。
实例解析
实例163 根据身份证号码判断其性别
身份证号码中的第17位数字可以表示持证人的性别信息,当17位数是奇数表示性别为“男”,是偶数表示性别为“女”。根据这一特性,可以使用ISODD函数来判断最后一位数字的奇偶性,从而确定持证人的性别。
选中C2单元格,在公式编辑栏中输入公式:
按Enter键即可根据B2单元格中的身份证号码判断出性别。
选中C2单元格,拖动右下角的填充柄向下复制公式,即可批量返回性别,如图4-20所示。
图4-20
嵌套函数
MID函数用于返回文本字符串中从指定位置开始的特定数目的字符。
公式解析
① 使用MID函数提取B2单元格中数据,从第17位开始提取,共提取1位。
② 使用ISODD函数判断①步结果是否是奇数,如果是,返回“男”,否则返回“女”。
实例164 分奇偶月计算总销售数量
在全年销量统计表中,要求分别统计出奇偶月的总销售量。
选中C2单元格,在编辑栏中输入公式:
按Ctrl+Shift+Enter组合键,可计算出偶数月的总销量,如图4-21所示。
图4-21
选中D2单元格,在公式编辑栏中输入公式:
按Ctrl+Shift+Enter组合键,即可计算出奇数月的总销量,如图4-22所示。
图4-22
公式解析
① 依次返回B2∶B13的行号,返回一个数组。
② 判断①数组中各数值是否是奇数(是奇数的对应的是偶数月的销量),如果是,返回TRUE,不是,返回FALSE。返回是一个数组。
③ ②步数组中为TRUE值的对应在B2∶B13中取值,然后再使用SUM函数进行求和。即得到偶数月的总销售量。
函数13:ISLOGICAL函数(检测给定值是否为逻辑值)
函数功能
ISLOGICAL函数用于判断指定的数据是否为逻辑值。
函数语法
ISLOGICAL(value)
参数解释
value:表示要检验的值。参数value可以是空值(空单元格)、错误值、逻辑值、文本、数字、引用值,或者引用要检验的以上任意值的名称。
实例解析
实例165 检验数据是否为逻辑值
在B2单元格的公式编辑栏中输入公式:
按Enter键即可检验出A2单元格的数据是否为逻辑值,如果是,则返回TRUE,否则返回FALSE。
将光标移到B2单元格的右下角,待光标变成十字形状后,按住鼠标左键向下拖动进行公式填充,即可判断出其他数值是否为逻辑值,如图4-23所示。
图4-23
函数14:ISERROR函数(检测给定值是否为任意错误值)
函数功能
ISERROR函数用于判断指定数据是否为任意错误值。
函数语法
ISERROR(value)
参数解释
value:表示要检验的值。参数value可以是空值(空单元格)、错误值、逻辑值、文本、数字、引用值,或者引用要检验的以上任意值的名称。
实例解析
实例166 忽略错误值进行求和运算
表格显示了各个销售员的销售量记录,其中有错误值显示,可以使用ISERROR函数进行销售量统计。
在E2单元格的公式编辑栏中输入公式:
按Ctrl+Shift+Enter组合键即可统计出所有销售员的销售量总计值,如图4-24所示。
图4-24
公式解析
① 判断C2∶C10单元格区域中的值是否为错误值,如果是,则记为0值。
② 将C2∶C10单元格区域中的非错误值进行求和运算。
函数15:ISNA函数(检测给定值是否为#N/A错误值)
函数功能
ISNA函数用于判断指定数据是否为错误值“#N/A”。
函数语法
ISNA(value)
参数解释
value:表示要检验的值。参数value可以是空值(空单元格)、错误值、逻辑值、文本、数字、引用值,或者引用要检验的以上任意值的名称。
实例解析
实例167 避免VLOOKUP函数查询时返回“#N/A”错误值
在使用LOOKUP或VLOOKUP函数进行查询时,当查询对象错误时通常都会返回#N/A,如图4-25所示。为了避免这种错误值出现,可以配合IF与ISNA函数实现当出现查询对象错误时返回“无此编号”提示文字。
图4-25
选中G2单元格,在公式编辑栏中输入公式:
按Enter键后向右复制公式,可以看到当F2单元格中的编号有误时,则返回所设置的提示文字,如图4-26所示。
图4-26
函数16:ISERR函数(检测给定值是否为#N/A以外的错误值)
函数功能
ISERR函数用于判断指定数据是否为错误值“#N/A”之外的任何错误值。
函数语法
ISERR(value)
参数解释
value:表示要检验的值。参数value可以是空值(空单元格)、错误值、逻辑值、文本、数字、引用值,或者引用要检验的以上任意值的名称。
实例解析
实例168 检验数据是否为“#N/A”之外的任何错误值
检验的结果是,如果是错误值不为“#N/A”,返回TRUE;其他任何值或者错误值“#N/A”都将返回FALSE。
如图4-27所示,A列为数据,B列为使用了ISERR函数建立公式后返回的结果。
图4-27
函数17:ISREF函数(检测给定值是否为引用)
函数功能
ISREF函数用于判断指定数据是否为引用。
函数语法
ISREF(value)
参数解释
value:表示要检验的值。
用法剖析
在如图4-28所示的表格中,C列是返回值,D列是对应的公式。可以看到当给定值是引用时返回TRUE,当给定值是文本或计算结果时返回FALSE。
图4-28
函数18:ISFORMULA函数(检测单元格内容是否为公式)
函数功能
ISFORMULA函数用于检查是否存在包含公式的单元格引用,然后返回TRUE或FALSE。
函数语法
ISFORMULA(引用)
参数解释
引用:必需。表示对要测试单元格的引用。引用可以是单元格引用或引用单元格的公式或名称。
实例169 检验单元格内容是否为公式计算结果
选中E2单元格,在公式编辑栏中输入公式:
按Enter键后,然后向下复制公式即可对D列中的各个单元格值进行检测,返回TRUE的表示是公式计算结果,返回FALSE的表示不是公式计算结果,如图4-29所示。
图4-29
函数19:SHEET函数(返回工作表编号)
函数功能
SHEET函数用于返回引用工作表的工作表编号。
函数语法
SHEET(value)
参数解释
value:可选。value为所需工作表编号的工作表或引用的名称。如果value被省略,则SHEET返回含有该函数的工作表编号。
实例170 返回工作表编号
在公式编辑栏中输入公式:
按Enter键返回值为2,表示该工作表是当前工作簿中的第2张工作表,如图4-30所示。
图4-30
函数20:SHEETS函数
函数功能
SHEETS函数用于返回引用中的工作表数。
函数语法
SHEETS(reference)
参数解释
reference:可选。reference指一项引用,此函数要获得引用中所包含的工作表数。如果reference被省略,SHEETS返回工作簿中含有该函数的工作表数。
实例解析
实例171 返回当前工作簿中工作表数量
选中A2单元格,在公式编辑栏中输入公式:
按Enter键即可统计出当前工作簿中工作表的数量,如图4-31所示。
图4-31