Excel怎么将多横转单一横列?

作者:佚名    更新日期:2025-06-19

方法/步骤



Excel将多行多列转为一行数据,可以使用INDEX引用函数组合公式。

假设源数据为A1:E3单元格区域,则输入公式并向右填充,如下:

=INDEX($A$1:$E$3,ROUNDUP(COLUMN(A1)/5,),MOD(COLUMN(A1)-1,5)+1)

公式及效果图

注:如果是转为一列,则只需要把COLUMN函数换成ROW函数。

公式中的数字5表示源数据的列数,如果只有3列数据,则把3改成5即可,如下图:

公式效果图



用vba自定义的公式,会比较简短易记,这边提供一个代码仅供参考,选中要转行的范围,将他们按顺序合并后,再用split把他们拆分成数组,在一个一个取出来。

=多行转1行($A$2:$E$4,COLUMN(A1))

'打开表格-按ALT+11-点击插入-点击模块

Function 多行转1行(a As Range, d As String)

For Each cel In a

b = b & "|" & cel

Next

c = Split(b, "|", -1, 1)

If d <= UBound(c) Then

多行转1行 = c(d)

Else

多行转1行 = ""

End If

End Function



=OFFSET($A2,(COLUMN(A1)-1)/5,MOD(COLUMN(A1)-1,5))     公式右拉



在excel中竖列怎么转换成横列 在Excel2003中,用“选择性粘贴/转置”功能: 选中数据区域执行“复制”命令; 在新单元格区域,执行“编辑/选择性粘贴/数值/转置/确定”即可。 还可以利用行、列转置函数TRANSPOSE()进行操作,详见Excel函数帮助。 希望对你有所帮助!

excel怎么把两列竖着的数据变成一排横的?~

D1单元格输入公式=OFFSET($A$2,INT(COLUMN(B1)/2)-1,MOD(COLUMN(B1),2),)&""

右拉公式到空白单元格出现止。 如图:



只需要复制,粘帖的时候选择性粘帖,选择“转置”即可,废话不多说,直接上例子:

方法/步骤


1
将上面的表格变成下图的样子,只需要选定上面的表格,然后ctrl+C复制。

2
选定一个空单元格后,右键选择性粘帖,在弹出的框里选择“转置”(在下图红圈里):

3
下图为点确定后的效果,实现了横行变竖列:
4
同理,竖列变横行也是同样的操作。