excel中将多列转成一列

来源:百度知道 编辑:UC知道 时间:2024/06/01 14:54:50
比如,把这样的单元格分布的表
a1 a2 a3 b1 b2 b3 c1 c2 c3 d1 d2 d3
e1 e2 e3 f1 f2 f3 g1 g2 g3 h1 h2 h3
转换成如下格式分布:
a1 a2 a3
b1 b2 b3
c1 c2 c3
d1 d2 d3
e1 e2 e3
f1 f2 f3
g1 g2 g3
h1 h2 h3
要方便可行的方法,用VBA更好,可行给加分。
对不起大家,第四楼“大徐哥”的答案是正确可行的,但很不好意思的是我的问题让我弄错了,能不能再帮我改一下,我想要的是这样的格式:
a1 a2 a3
e1 e2 e3
b1 b2 b3
f1 f2 f3
c1 c2 c3
g1 g2 g3
d1 d2 d3
h1 h2 h3
麻烦再帮我设计一下,谢谢!
其它回答都不正确

按你的示例,你的源数据在A列至L列

请试一下:
N1输入公式
=OFFSET($A$1,CEILING(ROW()/4,1)-1,COLUMN(A:A)-1+2*MOD(ROW()-1,4)+MOD(ROW()-1,4))

将此公式向复制到P1
再将N1:P1公式向复制

看看是不是你想要的

补充回答:
晕,重给一个公式给你:
=OFFSET($A$1,MOD(ROW(A1)-1,2),(INT((ROW(A1)-1)/2))*3+COLUMN(A:A)-1)

假设数据在A1:L100,在输出处输入公式:
=INDIRECT(TEXT(SMALL(IF($A$1:$L$100<>"",ROW($A$1:$L$100)*1000+COLUMN($A$1:$L$100)),(ROW(1:1)-1)*3+COLUMN(A:A)),"r0c000"),)
数组公式,公式在编辑状态下按Ctrl+Shift+Enter确定。
向右拉共3列再向下拉即可。

先选中并复制数据区域,然后在A4单元格点击“鼠标右键-选择性粘贴”,条件为“转置”,然后在D4单元格输入下面的公式并向下复制:
=A4&" "&B4&" "&C4

再选择处理好的这一列数据并复制,然后选择性粘贴,条件为数值,最后将原来的数据删除即可。

用选择性粘贴中的转置。