在EXCEL表中,公式:IF({1.0},E2:E7,D2:D7)中的{1,0}是什么意思,怎么用?

如题所述

1是IF表达式成立的意思,等于TRUE,返回第二参数E2:E7,0是IF表达式不成立的意思,等于FALSE,返回D2:D7,一般IF的用法中,往往要么等于1,要么等于0,这里用上的{1,0}常量数组,表示既返回第二参数,又返回第三参数,意思就是将E2:E7与D2:D7相连的意思。这个IF函数与=choose({1,2},E2:E7,D2:D7)等价,CHOOSE函数还可以连接第三个、第四个等。
与直接引用D2:E7不同,公式将这个区域进行了左右倒置,一般可以用在VLOOKUP函数中,如果要查找的在右边列,要返回的在左边列的情况下。
可以这么用
=VLOOKUP(C2,IF({1,0},E2:E7,D2:D7),2,)
数组公式。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-08-01
这是IF函数的一个特殊用法,可以将E2:E7区域放在D2:D7区域前面,正常情况下,D列在前,E列在后,但用了这个函数后,就把E列放在了D列前面,这样处理的方法在VLOOKUP函数中经常用到,一般情况下,索引列在返回值所在列的前面,可以直接用公式,如:
=VLOOKUP(A1,D2:E7,2,0)
但如果索引列为E列返回值所在的列为D列时,上面的公式就不能用了,需要处理一下,方法如下:
=VLOOKUP(A1,IF({1,0},E2:E7,D2:D7),2,0)
这样处理后就可以得到正确结果了。追问

在那个VLOOKUP(A1,IF({1,0},E2:E7,D2:D7),2,0)中,1,0到底代表什么?谢谢!

追答

1代表IF({1,0},E2:E7,D2:D7)中第二个参数E2:E7,0代表第三个参数D2:D7,知道这个就行了。这个就相当于一个条件判断:
=IF(逻辑表达式,值为TRUE时返回值,值为FALSE时的返回值)
IF函数不就是这样的吗?
{1,0}不就是用数组的方法表示逻辑表达式的吗?知道这个就可以了,慢慢体会去吧,跟我刚学时的感觉一样。用多了就会有体会的。

本回答被提问者采纳
第2个回答  2011-08-01
也就是,第一个参数为1和第一个参数为0的2个IF公式组合的简写
即IF(1,E2:E7,D2:D7)和IF(0,E2:E7,D2:D7)两个公式的组合

不过你这个公式是没有意义的,因为第一个参数,也就是1 ,0 ,不是一个判断条件
第3个回答  2011-08-01
这是数组公式的用法,让if函数分别取值1和0(即真和假)状态返回两个数组.达到vlookup或match函数的逆序引用.
你甚至可以改为if({5,0}...反正第一个为非0,第二个为0即可
第4个回答  2011-08-01
中括号内是数组追问

我知道是数组,但我不知道1,0的意思

相似回答