知识树投稿区

cleverzhzhf Lv.18

关注
本帖最后由 cleverzhzhf 于 2014-6-18 17:54 编辑

函数ISEVEN、ISODD的基础使用
作者:cleverzhzhf

语法:ISEVEN(number)
说明:如果参数 number 为偶数,返回 TRUE,否则返回 FALSE。
(Number:待检验的数值。如果 Number 不是整数,则截尾取整。)
相似函数:ISODD(number),判断number是否为奇数。

例1,基础用法:

=ISEVEN(4):返回结果为TRUE;

=ISEVEN(9):返回结果为FALSE;

=ISEVEN(4.7):返回结果为TRUE;

=ISEVEN(9.4):返回结果为FALSE。
例2,实例使用,很据身份证号判断性别:

=IF(ISEVEN(MID(120123198601011239,17,1),"女","男")

返回结果为男,身份证号倒数第二位为判断性别的,如果为奇数则是“男”,如果为偶数则是“女”。
注意,根据Excel的数据有效位数,最多只能保留15位数的精度:

如果上式改为:=IF(ISEVEN(LEFT(120123198601011239,17),"女","男")

则返回结果为女,因为有效位数超过15位,以0代替,变成ISEVEN(12012319860101100)。

附记,ISEVEN及ISODD并不常用:

对于函数较熟悉的,常常使用=MOD(number,2)来代替,根据逻辑判断中,数字0代表FALSE,非0数字代表TRUE。

MOD的用法更为灵活,但是ISEVEN和ISODD的可读性更好。根据个人喜好,进行选择使用。

3682阅读
5回复 倒序

hhjjpp Lv.7 2楼

条件格式中不能使用isodd和iseven

cleverzhzhf 楼主 3楼

引用: hhjjpp 发表于 2015-1-26 13:38
条件格式中不能使用isodd和iseven

条件格式中是可以使用的,只不过条件格式不接受数组公式。

hhjjpp Lv.7 4楼

引用: cleverzhzhf 发表于 2015-1-26 14:32
条件格式中是可以使用的,只不过条件格式不接受数组公式。

在03,我可不是头回遇到
QQ截图20150126144035.jpg

cleverzhzhf 楼主 5楼

引用: hhjjpp 发表于 2015-1-26 14:41
在03,我可不是头回遇到

03……已经很久没碰了。是不是和分析工具库有关?
在03里面,所有分析工具库的函数,好像都不能接受数组公式,比如:
=DEC2BIN(ROW(1:10))

而在2007以上已经没有此限制。
目前猜想,在2003中,分析工具库的函数有很大的局限:1、不接受数组公式;2、不能在条件格式中使用。

现在无法测试,只是猜想,不敢断言。

hhjjpp Lv.7 6楼

引用: cleverzhzhf 发表于 2015-1-26 14:55
03……已经很久没碰了。是不是和分析工具库有关?
在03里面,所有分析工具库的函数,好像都不能接受数组 ...

如果,没加载宏,提示完全不一样,公式输入不会被阻止,只是结果未如愿以偿而已!

已显示全部内容