在函数公式中,逗号起到分隔不同参数的作用。
但是在实际应用中,一些新人朋友往往会被这个小恶作剧冲昏头脑。
首先来看看我们熟悉的IF函数。如果A1输入1,用眼睛看这两个公式会得到什么结果?
=IF(A15,' vs ')
=IF(A15,' vs ',)
怎么样,猜对了吗?
前者返回逻辑值FALSE,后者返回数字0。
两个公式唯一的区别是逗号。第一个公式的基本参数意味着参数的位置将被剥夺。
第二个公式是省略参数值。也就是说,位置仍然存在,但尚未明确参数值是多少。
以下是返回结果的差异:接下来我们来看排名函数RANK。
单元格C2中的公式如下
=RANK(B2,B$2:B$6)
如果RANK函数的第三个参数为零或被省略,则排名结果将以降序排序。
如果第三个参数不为零,则排名结果按升序排序。
逗号的差异,老老师直接从排行榜第一名变成了第五名。
Match函数参数的最后逗号也很在意。
如下图所示,必须在列A中查询方飞的位置。
图中分别使用了两个公式,但结果不同。
=MATCH(D2、A:A)
=MATCH(D2、A:A、)
从图中可以看出,电子返回的是错误的结果。
如果MATCH函数的第三个参数为0,或者省略了参数值,则会以完全匹配的方式返回结果。
如果逗号也被省略,则会找到小于或等于查询值的最大值,但查询参数的值必须按升序排序。
受逗号的影响,还有VLOOKUP函数。请看下图。
图中分别使用了两个公式,其中逗号也影响了查询的精度。
=VLOOKUP(D2、A:B、2)
=VLOOKUP(D2、A:B、2、)
如果VLOOKUP函数的第四个参数为0,或者省略了参数值,则以完全匹配的方式返回查询结果。
如果逗号也被省略,查询区域将查询小于或等于查询值的最大值,并返回指定列的内容,因此必须按升序对查询参数的值排序。
以上几个例子表明,小逗号对公式结果的影响不容忽视。你能举几个类似的例子吗?
图形制作:祝洪忠