我正在尝试更改一组包含标题的数据。目前,预期的列都是单独的行。我想在第A列中保留第一个数据点“name”,但是将第二个数据点“number”移动到B列,将第三个数据点“average”移动到C列。然后删除那些现在为空的两行数字和平均值存在的位置,并为下一组数据重复此过程。例如:
以下是我想要的:
我尝试了一些事情:
1)转置...但是由于某种原因,这个PasteSpecial函数在我嵌入它的.XLSM文件中不可用。代码参考:
Worksheets("Sheet1").Range("A1:A5").Copy
Worksheets("Sheet2").Range("A1").PasteSpecial Transpose:=True
2)复制并粘贴。这是一项正在进行的工作,代码无法编译。
For k = 3 To maxRow Step 1
Rows(k).Select
Selection.Cut
Range(Columns("B"), Rows(k)).Select
Selection.Paste
Rows(k + 1).Select
Selection.Cut
Range(Rows(k), Columns(C)).Paste
'Range(Columns("B"), Rows(k)).PasteSpecial Transpose:=True
'Range(Rows(k), Rows(k + 2)).Select
'Selection.Delete Shift:=x1Up
Next k
我至少有一千个数据点。我的代码能够处理到最后一行但是这是我宏中的最后一个关键函数。任何帮助表示赞赏!
答案 0 :(得分:2)
以这种方式尝试:
For k = 3 To maxRow Step 3
Sheet2.Cells(Int((k + 1) / 3), 1).Resize(, 3).Value = _
Application.Transpose(Sheet1.Cells(k, 1).Resize(3).Value)
Next k