我在excel的单独列中有多个列表。我需要做的是将这些数据列合并为一个大列。我不在乎是否有重复的条目,但是我希望它跳过每列的第1行。

另外,如果ROW1在1月到12月之间具有标题,并且列的长度不同并且需要合并为一个大列,那该怎么办?

ROW1| 1   2   3
ROW2| A   D   G
ROW3| B   E   H
ROW4| C   F   I

应该合并成
A
B
C
D
E
F
G
H
I

每列的第一行都需要跳过。

最佳答案

试试这个。单击数据范围内的任意位置,然后使用此宏:

Sub CombineColumns()
Dim rng As Range
Dim iCol As Integer
Dim lastCell As Integer

Set rng = ActiveCell.CurrentRegion
lastCell = rng.Columns(1).Rows.Count + 1

For iCol = 2 To rng.Columns.Count
    Range(Cells(1, iCol), Cells(rng.Columns(iCol).Rows.Count, iCol)).Cut
    ActiveSheet.Paste Destination:=Cells(lastCell, 1)
    lastCell = lastCell + rng.Columns(iCol).Rows.Count
Next iCol
End Sub

关于merge - Excel-将多列合并为一列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2977660/

10-10 18:53