将多列合并为一列
Combining multiple columns into a single column
使用Excel,如何使用多列创建单列?
例如:我可能需要删除 2012-2014 列并为年份创建一个列。同时,我需要保留 2012-2014 年的信息,并为这些信息创建一个列以对齐每一行(姓名、国家/地区、年级、年份、数据):
Name Country Grade 2012 2013 2014
Smith France A 0.333194233 0.64347979 0.72795544
Adams Germany D 0.307532421 0.580823282 0.851274645
Franklin Americas C 4.597219783 7.983514354 10.79688839
Roosevelt Americas B 0.615064841 1.089043653 1.502249374
Washington Australia A 0.261792462 0.456573955 0.620206846
所以它应该是这样的:
Name Country Grade Year Data
Smith France A 2012 0.333194233
Smith France A 2013 0.64347979
Smith France A 2014 0.72795544 etc.
您在 'Paste Special' 中尝试过 TRANSPOSE 吗?或者你想要它动态?
在以下位置找到解决方案:LINK有效!
创建此模块和 运行 宏:
Public Sub tranpose()
Dim i As Long, _
LR1 As Long, _
LR2 As Long, _
LC As Long
Application.ScreenUpdating = False
Columns(1).Insert Shift:=xlToRight
LR2 = Range("B" & Rows.Count).End(xlUp).row
Range("A1:A" & LR2).Value = Chr(65)
LC = Cells(1, Columns.Count).End(xlToLeft).Column
For i = 3 To LC
LR1 = Range("A" & Rows.Count).End(xlUp).row + 1
LR2 = Cells(Rows.Count, i).End(xlUp).row
Range(Cells(1, i), Cells(LR2, i)).Cut Destination:=Cells(LR1, 2)
Range(Cells(LR1, 1), Cells(LR1 + LR2 - 1, 1)).Value = Chr(63 + i)
Next i
Application.ScreenUpdating = True
End Sub
假设 Name
在 A1 中,插入一个新的 ColumnD 并在 D1 中向下复制以适应:
=A1&"#"&B1&C1
然后逆轴旋转(带有图像的详细信息 here 选择 D1:Gn(n
以适应)。
在第 8 步之后。在 Table(成为 B:D)和 B2 中插入三个新列:
=LEFT(A2,FIND("#",A2)-1)
在 C2 中:
=MID(A2,FIND("#",A2)+1,LEN(A2)-LEN(B2)-2)
在 D2 中:
=RIGHT(A2)
整理得合身。
使用Excel,如何使用多列创建单列?
例如:我可能需要删除 2012-2014 列并为年份创建一个列。同时,我需要保留 2012-2014 年的信息,并为这些信息创建一个列以对齐每一行(姓名、国家/地区、年级、年份、数据):
Name Country Grade 2012 2013 2014
Smith France A 0.333194233 0.64347979 0.72795544
Adams Germany D 0.307532421 0.580823282 0.851274645
Franklin Americas C 4.597219783 7.983514354 10.79688839
Roosevelt Americas B 0.615064841 1.089043653 1.502249374
Washington Australia A 0.261792462 0.456573955 0.620206846
所以它应该是这样的:
Name Country Grade Year Data
Smith France A 2012 0.333194233
Smith France A 2013 0.64347979
Smith France A 2014 0.72795544 etc.
您在 'Paste Special' 中尝试过 TRANSPOSE 吗?或者你想要它动态?
在以下位置找到解决方案:LINK有效!
创建此模块和 运行 宏:
Public Sub tranpose()
Dim i As Long, _
LR1 As Long, _
LR2 As Long, _
LC As Long
Application.ScreenUpdating = False
Columns(1).Insert Shift:=xlToRight
LR2 = Range("B" & Rows.Count).End(xlUp).row
Range("A1:A" & LR2).Value = Chr(65)
LC = Cells(1, Columns.Count).End(xlToLeft).Column
For i = 3 To LC
LR1 = Range("A" & Rows.Count).End(xlUp).row + 1
LR2 = Cells(Rows.Count, i).End(xlUp).row
Range(Cells(1, i), Cells(LR2, i)).Cut Destination:=Cells(LR1, 2)
Range(Cells(LR1, 1), Cells(LR1 + LR2 - 1, 1)).Value = Chr(63 + i)
Next i
Application.ScreenUpdating = True
End Sub
假设 Name
在 A1 中,插入一个新的 ColumnD 并在 D1 中向下复制以适应:
=A1&"#"&B1&C1
然后逆轴旋转(带有图像的详细信息 here 选择 D1:Gn(n
以适应)。
在第 8 步之后。在 Table(成为 B:D)和 B2 中插入三个新列:
=LEFT(A2,FIND("#",A2)-1)
在 C2 中:
=MID(A2,FIND("#",A2)+1,LEN(A2)-LEN(B2)-2)
在 D2 中:
=RIGHT(A2)
整理得合身。