我们在Excel公式中,常常会看到IF({1,0},XXX,YYY) 这样的公式,究竟是什么意思呢?这个一直困惑着大家,今天给大家列出以下用法:

IF({1,0},xxx,yyy) 这个结构就是为了重新构造一个数组,

IF 大括号里有 列的选择、行的选择、行列选择;

{1,0,0,0.....} 这个是对应的 "列" 的选择;

{1;0.....} 是对应“行”的选择

{1,0;0,1......} 是"行列“的组合

列的选择

首先我们看一下例子:

excel公式if的用法(Excel公式中IF1)(1)

使用公式: IF({0,1,1,0,0,1,0},A3:G13),得到的结果如下:

上面的IF大括号里 长度为 7,宽度为1,这样我们得到的结果,0对应FALSE,

1对应A13:G13

excel公式if的用法(Excel公式中IF1)(2)

行的选择

类似的{1;0.....} 对应行的选择,

IF({0;1;1;0;0;1;0},D27:D33) ,IF 里的宽度为 7,长度为1

excel公式if的用法(Excel公式中IF1)(3)

通过上面公式,得到的结果为:

excel公式if的用法(Excel公式中IF1)(4)

行列组合

=IF({1,0,1,1;1,1,0,1;0,1,0,1},A2:D4)

excel公式if的用法(Excel公式中IF1)(5)

示例

1.VLOOKUP 反向查找 中的{1,0}

正常情况下,VLOOKUP函数只能实现从左向右查找,如果要实现从右向左查找,则需要与IF函数组合才能实现。例如,可以使用公式=VLOOKUP(G2,IF({1,0},B2:B23,A2:A23),2,0)实现按姓名查找学号的目的,如下图。

excel公式if的用法(Excel公式中IF1)(6)

公式: =VLOOKUP(G2,IF({1,0},B2:B23,A2:A23),2,0)

IF({1,0},B2:B23,A2:A23) 的含义是:

当IF函数选择1时,返回 B2:B23 单元格区域。

当IF选择0时,返回 A2:A23单元格区域

所以整体返回内存的 数组为:

excel公式if的用法(Excel公式中IF1)(7)

2.提取季度合计值计算全年销售额

excel公式if的用法(Excel公式中IF1)(8)

示例: 计算前面销售额合计值,只需要把一季度到四季度合计相加即可!

=SUM(IF(MOD(ROW($A1:$A17),4)=0,$B2:$B17))

按 Ctrl Shift Enter组合键,即可 计算出全年销售额的合计值。

excel公式if的用法(Excel公式中IF1)(9)

公式解析:

(1)=SUM(IF(MOD(ROW($A1:$A17),4)=0,$B2:$B17)) 返回单元格A1:A17单元格区域中隔行的行号,返回的是一个数组。

(2) =SUM(IF(MOD(ROW($A1:$A17),4)=0,$B2:$B17)) 返回步骤一中各值与4相除后的余数是否为0。

我们看下调试后的值,按F9查看数据

=SUM(IF({0;0;0;1;0;0;0;1;0;0;0;1;0;0;0;1;0},$B2:$B17))

IF 里是参数 长度为1,宽度为17,最终得到以下数组

excel公式if的用法(Excel公式中IF1)(10)

最终 $B2:$B17 除了TRUE对应的有值,其他对应的都没有值。

(3)将步骤二返回数组中结果进行值求和;

,