我有一个ID列(A)和一列可变数据(B),如下所示。
A B
1 0.1
2 0.1
3 0.1
4 0.2
5 0.3
6 0.3
7 0.2
8 0.3
我需要生成一个VBA代码,该代码对这些数据进行分组,以便汇总表如下所示:
Start ID End ID B Value
1 3 0.1
4 4 0.2
5 6 0.3
7 7 0.2
8 8 0.3
我是Excel VBA的新手,我在编写可以执行此操作的短代码时遇到问题。我所包含的数据也只是示例的第一部分,代码需要能够为任意数量的ID创建摘要。非常感谢任何帮助,谢谢。
答案 0 :(得分:0)
这段代码有点丑陋而且很脏,但它会起作用:
(假设:
B2
开始,其相应的ID从A2
E2
根据需要更改所有内容)
Sub CreateSummaryTable()
Dim cl As Range
Dim StartCl As Range
Dim TableRow As Integer
Set StartCl = Range("B2")
TableRow = 2
For Each cl In Range("B2:B50")
If cl.Value <> StartCl.Value Then
Range("E" & TableRow).Value = StartCl.Offset(0, -1).Value
Range("F" & TableRow).Value = cl.Offset(-1, -1).Value
Range("G" & TableRow).Value = StartCl.Value
Set StartCl = cl
TableRow = TableRow + 1
End If
Next
End Sub