簡體   English   中英

使用VBA宏進行分組

[英]Grouping using VBA macro

我正在使用Excel 2010,並且想使用VBA對數據行進行分組。 我將遍歷每一行以標識組的起點和終點。 我將在A列開始。 正如您在下面看到的,我有10行。 我的第一組的開頭應該是"AAA" 該組將占據所有行,直到"BBB" 下一組將從"BBB"開始,並在下面的所有行中進入"CCC" 第三行將從"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

這應該使您入門。 它將通過查找您的節名稱來定義每個范圍,然后對這些范圍進行排序。

' 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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM