如何通过宏在Excel中的特定行中粘贴不同的列名。
例如:
我有10个不同的列,每列有10行数据。
我已经完成了在单个列中粘贴这10个列值的编码(例如:A列)(因此100行数据 - > 10行* 10列)但我需要将所有这10个列名称粘贴到B中与列值对应的行中的列。
在编码之前:
Name 1 Name 2 Name 3 Name 4
A E H K
B F I L
C G J M
我的编码之后:
Name 1 Name 2 Name 3 Name 4
A
B
C
E
F
G
H
I
J
K
L
M
我现在期待的是什么!!
Name Name Category
A Name 1
B Name 1
C Name 1
E Name 2
F Name 2
G Name 2
H Name 3
I Name 3
J Name 3
K Name 4
L Name 4
M Name 4
任何excel专家请帮帮我。提前致谢
答案 0 :(得分:0)
试试这个。我已经在您的示例表上测试了以下代码,它似乎正在运行。
Sub VijayRamRaja()
Dim cols As Integer
cols = ActiveSheet.UsedRange.Columns.Count
For iCol = 2 To cols
Dim tHead, tData, tNewS
Set tHead = Cells(1, iCol)
Set tData = Range(Cells(2, iCol), tHead.End(xlDown))
tNewS = Range("A1").End(xlDown).Offset(1, 0).Address
tData.Cut Range(tNewS)
For Each iCell In Range(Range(tNewS), Range(tNewS).End(xlDown))
iCell.Offset(0, 1).Value2 = tHead.Value2
Next iCell
tHead.Clear
Next iCol
For Each iCell In Range("B1", Range("B1").End(xlDown).Offset(-1, 0))
iCell.Value2 = Range("A1").Value2
Next iCell
ActiveSheet.Rows(1).EntireRow.Delete
End Sub