在对数据进行统计分析时,经常需要把多行多列数据转化为一列!

有人说,这还不简单?!比如下面的方法:

方法1:复制一列,再粘贴一列;

方法2:利用错位引用;

方法3:利用剪贴板;

方法4:利用数据透视表

上面4种方法,小编只能哈哈大笑了!!!

请看,小编的方法:

excel多行多列数据转为单列,只需一键即可转化!-趣帮office教程网

温馨提示:在转化前,先选择待转化的数据或数据区域!!

实现上述功能,所需代码如下:

Sub RangeToOneCol()

Dim TheRng, TempArr

Dim i As Integer, j As Integer, elemCount As Integer

On Error GoTo line1

Range("a:a").ClearContents

MsgBox "请先选择需要被转化的数据区域!"

If Selection.Cells.Count = 1 Then

Range("a1") = Selection

Else

TheRng = Selection

elemCount = UBound(TheRng, 1) * UBound(TheRng, 2)

ReDim TempArr(1 To elemCount, 1 To 1)

For i = 1 To UBound(TheRng, 1)

For j = 1 To UBound(TheRng, 2)

TempArr((i - 1) * UBound(TheRng, 2) j, 1) = TheRng(i, j)

Next

Next

Range("a1:a" & elemCount) = TempArr

End If

line1:

End Sub

代码窗口的截图,如下:

excel多行多列数据转为单列,只需一键即可转化!-趣帮office教程网

插入一命令按钮(比如名称为“点我”),把上面的代码赋于这个按钮,这样就把既浪费时间又容易出错的事情,轻轻按下按钮就可以解决了。