求助:EXCEL中如何能让满足一定条件的数字全部自动复制到新的单元格中,并且只要A列有变动都自动更新C列

如题所述

第1个回答  2013-03-18

将负数提取到1列

第2个回答  2013-03-18
你没有说明具体的条件
现根据截图假设条件是“<0”
则C2公式为:=IF(ROW(A1)+1>COUNTIF(A:A,"<0"),"",INDEX(A:A,SMALL(((1-(A$2:A$500<0))*10^9+1)*ROW(A$2:A$500),ROW(A2))))
按“CTRL+SHIFT+回车”输入数组公式,并下拉追问

可行!感谢大侠了.
请教下SMALL后面的*10^9 这块能简单指导下吗?

追答

10^9是一个足够大的数字(10亿),正常的EXCEL运算不可能达到这个数量级
公式的基本原理是,用这个巨大的数,将不符合条件的行号放大(与之相乘),而符合条件的行号保留原值,然后再按从小到大的顺序取值

本回答被提问者和网友采纳
第3个回答  2013-03-18
C2输入公式
=IF(ISERR(INDEX(A$1:A$100,SMALL(IF(A$1:A$100<0,ROW($1:$100),""),ROW(A1))
)),"",INDEX(A$1:A$100,SMALL(IF(A$1:A$100<0,ROW($1:$100),""),ROW(A1))
))
CTRL SHIFT 回车结束,
相似回答