【发布时间】:2017-03-22 18:18:20
【问题描述】:
我对 VBA 非常陌生,我正在尝试在 Excel 中创建代码,该代码将根据范围内的值(例如 0)选择行,并使用 Excel 中的 group 函数将它们组合在一起。在下面的链接捕获中,您可以看到我从哪里开始(捕获 1)到我想去的地方(捕获 2)。
The following code is where I've got to which selects all rows which are 0. Unfortunately, I cannot use the Group function when multiple rows are selected that are not together.
我不太确定要在代码中添加什么以使其将第一组 0 分组,然后移动到下一组 0 并执行相同操作,直到到达范围的末尾。我还希望它跳过空白单元格,例如附加的屏幕截图第 13 行中的空白单元格。
Sub SelectGroupRows0()
Dim c As Range
Dim rng0 As Range
Dim block As Range
Set block = Range("B4:B23")
For Each c In block
If c = 0 Then
If rng0 Is Nothing Then Set rng0 = c.EntireRow
Set rng0 = Union(rng0, c.EntireRow)
Else: End If
Next c
rng0.Select
Selection.Rows.Group
End Sub
对此的任何帮助将不胜感激。
提前致谢,
问
【问题讨论】:
-
附带说明,如果顺序不重要,数据透视表可以更轻松地进行分组
-
顺序很重要,因为这些表格用于 ThinkCell 瀑布图中。