ROW($1:$10)),ROW(1:1)),COLUMN(A$1)):返回A2:A11中第1个符合条件的记录第1列的值,即“小乔”。当向右复制公式时,COLUMN(A$1)变为COLUMN(B$1),返回第1个符合条件的记录第2列的值,即“女”。(5)当所有符合条件的记录均已查询完毕时,INDEX+SMALL+IF+ROW函数会返回错误值。因此使用IFERROR...
IF(...,ROW($2:$10))该函数从满足条件的行中提取行号,而不满足条件的行则显示FALSE。排序与提取:SMALL(...,ROW(A1))这是公式的核心部分。SMALL函数根据提供的数组返回第N小的值,而N由ROW(A1)动态提供。随着公式的向下拖动,N值递增,从而依次提取出所有满足条件的行号。索引取值:INDEX(C:C,...)INDE...
今天分享一个数组函数:INDEX+SMALL+IF+ROW组合,用来实现一对多查询,如下图所示,需要查询销售人员多个产品的销售额,在F2单元格输入下列公式并下拉填充:=IFERROR(INDEX(C2:C7, SMALL(IF((A2:A7=E2), ROW(A1:A6), 999), ROW(A1))), "")。数组公式,Excel2021之前的版本需要输入Ctrl+Shift+Enter;ROW(...
举例来说,SMALL({11,22,33},1)=11,也就是SMALL返回第一参数中第1(第二参数)小的数字。同理,SMALL({11,22,33},2)=22。 为了下拉公式方便,我们一般用ROW()函数做SMALL的第二参数,保证下拉公式时自动提取第2小,第3小…… 也就是用:=SMALL(IF(AA2:AA9=BB11,ROW(AA2:AA9)),ROW(A1)) 将第一...
今天分享一个数组函数:INDEX+SMALL+IF+ROW组合,用来实现一对多查询,如下图所示,需要查询销售人员多个产品的销售额,在F2单元格输入下列公式并下拉填充:=IFERROR(INDEX(C$2:C$7, SMALL(IF(($A$2:$A$7=$E$2), R…
介绍一个INDEX+SMALL+IF+ROW的函数组合,能提取出满足某条件或某些条件的所有数据,可以一次性返回单行单列或多行多列的结果。 示例 组合函数 =INDEX(C$1:C$15,SMALL(IF(($C$3:$C$15=$C$18)*($D$3:$D$15=$E$18),ROW($C$3:$C$15)),ROW(A1))) ...
INDEX(结果列,SMALL(IF(条件,ROW(条件列),4^8),ROW(A1)))&"" ⑤结束键:数组公式须同时按CTRL+SHIFT+ENTER三键结束。 这个组合函数在简单的报表里用得不频繁,所以每到用时方恨练得少。接下来直接举“栗子”啦,想要进阶的同学多练习几遍,能从头到尾自己打代码把公式写下来才算真正掌握!
INDEX(结果列,SMALL(IF(条件,ROW(条件列),4^8),ROW(A1)))&"" ⑤结束键:数组公式须同时按CTRL+SHIFT+ENTER三键结束。 这个组合函数在简单的报表里用得不频繁,所以每到用时方恨练得少。接下来直接举“栗子”啦,想要进阶的同学多练习几遍,能从头到尾自己打代码把公式写下来才算真正掌握!
ROW(1:1))得出最小的是3,倒是第二小的是4,….最大的是65536. index函数加入其中 =Index(结果列,small函数运行的到的行号) =返回行号所对应的结果列中的数据 在H2单元格输入公式 =INDEX(B:B,SMALL(IF($A$2:$A$29=$G$2,ROW($A$2:$A$29),4^8),ROW(1:1)))按ctrl+shift+回车键结束。
这里讲的INDEX+SMALL+IF+ROW的函数组合,号称“万能”的函数组合,就是解决一对多查询的一种通式,如果你能掌握,那在Excel里基本上就没有什么查询你是实现不了的了(除了INDIRECT+RC引用)。 这个函数的特点是:能提取出满足某条件或某些条件的所有数据,可以一次性返回单行单列或多行多列的结果。