Excel怎样快速把bcd列的内容排到A列里面?

Excel怎样快速把bcd列的内容排到A列里面?接着A列里面的内容往下排,难道需要一个代码按钮比较快?

数据量小时,可考虑公式,数量大时考虑用Power Qurey(数据量小时也可以)

如图为公式法,

E2=INDIRECT(TEXT(SMALL(IF(A$2:C$16="",9^10,ROW($2:$16)*10000+COLUMN(A:C)),ROW(1:1)),"r0c0000"),)&""

低版本要同时按Ctrl+Shift+Enter三键输入数组公式,高版本可以按普通公式来输入。下拉到出现空白单元格

公式中构建了一个行数乘以列数的内存数组,所以说数据大时,不宜用公式。

而Power Qurey中只需先用分隔符合并所有列,再拆分,拆分时选择高级中的拆分为行。再删除空行后就得到了需要的结果。上载回Excel工作表即可。下图G列即PQ得到的结果

PQ中处理的另一个方法是:添加一个索引列,再在选择索引列后,逆透视其他列,结果为3列数据:索引列、属性列(原第1行标题)、值列(逆透视后的列)。删除值以外的列,并把标题“值”修改为“位号”。上载回Excel工作表中。两个方法异曲同工。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2022-02-28

=IFERROR(IFERROR(IFERROR(INDEX($B$1:$B$14,SMALL(IF($B$1:$B$14<>"",ROW($1:$14),""),ROW(A1))),INDEX($C$1:$C$14,SMALL(IF($C$1:$C$14<>"",ROW($1:$14),""),ROW(A1)-COUNTA($B$1:$B$14)))),INDEX($D$1:$D$14,SMALL(IF($D$1:$D$14<>"",ROW($1:$14),""),ROW(A1)-COUNTA($B$1:$C$14)))),"")

CTRL+SHIFT+回车

引用区域根据自己表格区域进行修改

本回答被提问者采纳
第2个回答  2022-02-28
要么就复制黏贴;要么就写宏命令了。
第3个回答  2022-02-28
像这种情况,我一般都是复制粘贴
相似回答