各位大神,excel我想将A列的数值为1.2.3时,分别将B列的数据复制到C,D,E列,每列数据置顶,怎么写公式?

如题所述

用数组
还是VBA代码?
数组公式
C1=INDEX($B:$B,SMALL(IF($A$1:$A$1000=COLUMN(A1),ROW($A$1:$A$1000),65536),ROW(A1)))&""
同时按CTRL SHIFT 回车键,出现结果再右拉,下拉公式追问

最好用数组

追答

C1=INDEX($B:$B,SMALL(IF($A$1:$A$1000=COLUMN(A1),ROW($A$1:$A$1000),65536),ROW(A1)))&""
同时按CTRL SHIFT 回车键,出现结果再右拉,下拉公式

追问

那D列的公式呢?

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-03-28
表达不清楚,无法帮你设计公式。追问

就是将A和B列变成CDEFG列的样子,应该在用什么公式?

第2个回答  2017-03-28
=IF(A1<=3,B1)这个输入在C,D,E往下拉下就好
第3个回答  2017-03-28
猜,是这个意思吗?
C1单元格输入公式
=IF(OR($A1=1,$A1=2,$A1=3),$B1,"")
向右复制到E列,再将三列向下复制。
相似回答