我使用此函数来计算这些值出现的次数:
=COUNTIFS(I:I;">100";I:I;"<300";A:A;"=1")
结果:3
如何从此结果中找到行?
答案 0 :(得分:1)
为了返回第二行,第三行等,你将不得不使用某种形式的数组处理,无论它是否是一个实际的数组公式。最好尽量减少单元格区域中的行数,并完全避免完整的列引用。
L3中的公式是,
=IF(ROW(1:1)<=COUNTIFS(I:I; ">100";I:I; "<300";A:A; 1); SMALL(INDEX(ROW($1:$999)+((I$1:I$999<=100)+(I$1:I$999>=300)+(A$1:A$999<>1))*1E+99;;);ROW(1:1)); "")
根据需要填写以捕获从匹配项返回的所有行到多个条件。
要返回单元格的实际值,请使用SMALL function返回的长整数值(又名行号)和INDEX function引用列I :我
=IF(ROW(1:1)<=COUNTIFS(I:I; ">100";I:I; "<300";A:A; 1); INDEX(I:I; SMALL(INDEX(ROW($1:$999)+((I$1:I$999<=100)+(I$1:I$999>=300)+(A$1:A$999<>1))*1E+99;;); ROW(1:1))); "")
我使用搜索和替换将我的逗号列表分隔符更改为分号,我认为我说得对,但无法检查是否反转了系统的区域设置。