4、再回过来说IF()函数 当条件是一个单变量时,总代表true和false,即“真”和“假”,它总是返回两个值当中的一个。 但是 但是,当条件不是单变量,而是一个数组时,当条件为{1,0}时,结果如何呢? 记住,返回的结果与条件一样,是个数组,而且,与条件数组的列数相同。 课堂上,老师说:同学们好,我们来做个游戏,当老师举起左手的时候,你说“语文”,当老师举起右手的时候,你说100,清楚了没有?同学们都说清楚了,于是:
老师举起左手,一同学回答“语文”:If(左手,"语文",100)="语文"
老师的话隐含了一层意思,左手为真,右手为假,左手为1,右手为0:If(1,"语文",100)="语文" 接下去的游戏自然还有:If(右手,"语文",100)=100 即 If(0,"语文",100)=100 轮到第三个同学了,老师把两只手都举了起来,那么这同学怎么回答?
也许这位同学会说“老师,你有病?”当然,我更希望这位同学能回答:“语文”,100。 不是么:IF({左手,右手},"语文",100)={"语文",100} 前面提过,左手是真,右手是假,写标准点,就是: IF({true,false},"语文",100)={"语文",100} 也是:IF({1,0},"语文",100)={"语文",100} 你糊涂了吗?
没有? 没有就好。别钻牛角尖,这个比方打得可能不太合适。 接着,老师还会把游戏继续做下去,再把规则改一改:老师举左手的时候,回答科目,举右手的时候,回答成绩。
老师举起左手,同学D回答:语文、数学、英语、计算机 老师举起右手,同学E回答:100、90、95、80 这时,老师把左右手都举了起来,老师说,如果懂了,请正确说出结果。 于是,有同学回答:"语文",100;"数学",90;"英语",95;"计算机",80 老师满意极了。 用我们熟悉的方式表现出来,就是:
=IF({1,0},科目,成绩)={"语文",100;"数学",90;"英语",95;"计算机",80} 真是由浅入深的教学 原以为自己能够用IF函数做工资表和工资条就算是对IF函数比较了解了,看了这个帖子才知道自己有多么肤浅,我一定要向各位好好学习. |