发布网友 发布时间:2022-04-30 14:19
共5个回答
热心网友 时间:2022-06-23 01:23
方法/步骤
将一个10行4列的数据转换为一列。
首先选中这组数据,然后点击复制。打开粘贴板(工具栏左下侧有一个粘贴板展开按钮),可以看见刚才复制下来的数据
双击F1,使之处于编辑状态,然后在粘贴板的下拉菜单中单击粘贴,使数据粘贴到F1中。
选中F1中数据,并复制,然后粘贴到G列。
选中G列数据,找到工具栏中的【填充】按钮,下拉单击【两端对齐】,即可。
END
注意事项
从图中操作可以看出,该方法是将多行多列的数据按照先行后列的顺序转换为单列数据的。
若想将多行多列数据按照先列后行的顺序转换,可以先将该组数据进行一次转置,再进行上述操作。
热心网友 时间:2022-06-23 01:24
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即可,如下图:
热心网友 时间:2022-06-23 01:24
用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
热心网友 时间:2022-06-23 01:25
=OFFSET($A2,(COLUMN(A1)-1)/5,MOD(COLUMN(A1)-1,5)) 公式右拉
热心网友 时间:2022-06-23 01:25
假设你的数据是3行5列、起始于A1单元格的数据区域,要将该区域数据展开为一维数据,可以用INDEX方法。