加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

这些问题就别再用IF函数了,很傻的~

(2017-12-20 04:08:04)
标签:

杂谈

http://upload-images.jianshu.io/upload_images/4460243-75832eafed87d0f1?imageMogr2/auto-orient/strip

国庆过半,我依然窝在乡下,抱着老旧的电视看了半天的跑男,心想自己是中毒了,满脑海都是陈赫的脸,耳朵里都是他对李沁说,呵呵,小傻瓜………………

咳,说正事。


如果谈起Excel里最先被大家所认识和熟悉的函数,大概也就是IF、SUM和VLOOKUP这三家伙了,其中IF函数作为一个条件判断函数,简单又实用,也是OFFICE等级考试必考的。

……在工作和学习中,也许有很多表格问题你已习惯了使用IF函数,但有时候IF函数并不是最适用的。

比如说吧……


1,

每当OFFICE二级考试来临的那段时间,总有很多学生跑来问星光下面这样类似的问题。

http://upload-images.jianshu.io/upload_images/4460243-d83a88387b20dae0?imageMogr2/auto-orient/strip


假设有位老师需要对班级学生的成绩进行评分,其中60分以下不及格,60~70分之间及格,71~80分良好,81~90分优秀,91~100优异,如何用公式对如图所示的表格数据进行评分?

这问题很多人会立刻想到使用IF函数去处理:

=IF(B2>90,"优异",IF(B2>80,"优秀",IF(B2>70,"良好",IF(B2>=60,"及格","不及格"))))

……呵呵……小傻瓜……其实……这类问题其实更适合LOOKUP函数去解决:

=LOOKUP(B2,{0,"不及格";60,"及格";71,"良好";81,"优秀";91,"优异"})


2,

这个例子和第一个相似却又不同的问题。

如下图所示,如果A列的数据等于“看见星光”,就返回男孩,如果是“大红花”,就返回女孩,如果是“萧才人”就返回淑女,如果是“芬子”就返回乖乖女,如果是“随风”就返回小正太……

http://upload-images.jianshu.io/upload_images/4460243-2ca46959fed5803d?imageMogr2/auto-orient/strip


喂,你还在想使用IF函数?小傻瓜……

http://upload-images.jianshu.io/upload_images/4460243-d55979e1ba84d2e5?imageMogr2/auto-orient/strip


如若不然呢?

你看,这虽然是一个条件判断问题,但也是一个条件查询问题呢,所以……试试条件查询大神函数VLOOKUP吧……

=VLOOKUP(A2,{"看见星光","男孩";"大红花","女孩";"芬子","乖乖女";"随风","小正太";"萧才人","淑女"},2,0)

如果你原意建立一个匹配表,公式会更加简单:

http://upload-images.jianshu.io/upload_images/4460243-f39bc5c9d5f10e5a?imageMogr2/auto-orient/strip


3,

第3个例子,说来和第1个例子依然有点面熟……请看图……

http://upload-images.jianshu.io/upload_images/4460243-44f2b5d54ee06136?imageMogr2/auto-orient/strip


根据E:G列的计算规则,对B列的编号划分班级。例如0-100之间为1班,200-300为2班,500-600之间为3班……但如果编号不在规则范围内,例如102,则返回“界外”。

嗯,IF函数……大概是这样的……

=IF((B2>=E$2)*(B$2<=F$2),G$2,IF((B2>=E$3)*(B$2<=F$3),G$3,IF((B2>=E$4)*(B$2<=F$4),G$4,IF((B2>=E$5)*(B$2<=F$5),G$5,IF((B2>=E$6)*(B$2<=F$6),G$6,"界外")))))

听说公式写的越长越复杂水平越流弊?呵呵,小傻瓜。

其实公式可以很简单的:

=IFERROR(LOOKUP(1,0/((B2>=E$2:E$6)*(B2<=F$2:F$6)),G$2:G$6),"界外")

LOOKUP(1,0/查询条件,查询结果)是函数中经典的条件查询套路,常用于多条件查询;当该公式查无结果时,使用IFERROR返回指定结果:界外。

(思考时间:这里为什么不能直接使用例子1的LOOKUP模糊查询套路?)

……

……

就酱紫。

挥手再见说晚安。

http://upload-images.jianshu.io/upload_images/4460243-2cfbc9b7a2ef84e7?imageMogr2/auto-orient/strip



0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有