我正在使用Excel 2010,我想使用VBA对数据行进行分组。我将循环遍历每一行以确定组的起点和终点。 A列是我要开始的地方。如下所示,我有10行。我的第一组的开头应该是"AAA"
。该组将接收所有行,直到"BBB"
。下一组将从"BBB"
开始,并将下面的所有行都收录到"CCC"
。第3行将从"CCC"
开始,接收下面的所有行,并在遇到空白行时停止。在给定组标题的情况下,分组应采用任意数量的行。一旦我有了这些,我想对每个组中的行进行排序,然后使用条件格式。
你能帮忙分组吗?从哪里开始?
A
1 AAA
2 ROW CONTENT
3 ROW CONTENT
4 BBB
5 ROW CONTENT
6 CCC
7 ROW CONTENT
8 ROW CONTENT
9
10
答案 0 :(得分:0)
这应该让你开始。它将通过查找您的节名称来定义每个范围,然后对这些范围进行排序。
' Array of section names...
Dim a As Variant
a = Array("AAA", "BBB", "CCC", "")
Dim i As Long, intStart As Long, intEnd As Long
For i = 0 To UBound(a) - 1
intStart = Range("A:A").Find(a(i)).Row
intEnd = Range("A:A").Find(a(i + 1)).Row - 1
With Sort
.SetRange Range(Cells(intStart, 1), Cells(intEnd, 1))
.Header = xlYes
.Apply
End With
Next