我在Excel中有这个问题,我想在VBA中使用宏来解决 . 我有一张包含以下格式的数据:
separator
1
2
6
3
8
342
532
separator
72
28
10
21
separator
38
23
234
我想要做的是创建一个VBA宏,为每个数据系列创建一个新工作表(一系列从“分隔符”开始,在下一个或在初始工作表结束之前结束)并复制相应的数据新床单 . 例:
1
2
6
3
8
342
532
在sheet1中
72
28
10
21
在sheet2等等 . 非常感谢,我很感激!这会将数据从开头复制到第一个分隔符(“q”):
Sub macro1()
Dim x As Integer
x = 1
Sheets.Add.Name = "Sheet2"
'Get cells until first q
Do Until Sheets("Sheet1").Range("A" & x).Value = "q"
Sheets("Sheet2").Range("A" & x).Value = Sheets("Sheet1").Range("A" & x).Value
x = x + 1
Loop
End Sub
2 回答
试试这个......(UNTESTED)
您可以使用它来避免每行循环 . 只要你想删除原始数据 .