ich bastle nun schon länger an meiner Datei und komme einfach nicht weiter.
Ich habe eine Datei mit diversen Zwischensummen. Die Bereiche zwischen diesen Zwischensummen sollen per VBA gruppiert werden.
Durch die Hilfe eines Forumsmitglieds und des folgenden Codes klappt das auch:
Sub Test()
Dim ErsteZeile As Long, LetzteZeile As Long, rngRange As Range, varRowZwischenSummen() As _
Variant, intAnzZwischenSummen As Integer, rngZelle As Range
i As Integer
intAnzZwischenSummen = 0
With ActiveSheet
' Erste und letzte Zeile ermitteln
ErsteZeile = 3
LetzteZeile = .Cells(Rows.Count, 3).End(xlUp).Row
' Bereich festlegen
Set rngRange = .Range(.Cells(ErsteZeile, 3), .Cells(LetzteZeile, 3))
' Positionen der Zwischensummen ermitteln
For Each rngZelle In rngRange
If rngZelle.Value Like "*TOTAL*" Then
intAnzZwischenSummen = intAnzZwischenSummen + 1
ReDim Preserve varRowZwischenSummen(intAnzZwischenSummen)
varRowZwischenSummen(intAnzZwischenSummen) = rngZelle.Row
End If
Next rngZelle
' Gruppieren 1. Gruppe
Rows(ErsteZeile & ":" & varRowZwischenSummen(1) - 1).Rows.Group
' Gruppieren restliche Gruppen (zwischen zwei Summen)
For i = 1 To intAnzZwischenSummen - 1
Rows(varRowZwischenSummen(i) + 1 & ":" & varRowZwischenSummen(i + 1) - 1).Rows.Group
Next i
End With
End Sub
Mein Problem ist nun jedoch, dass ich in einigen Dateien nicht nur Zwischensumme, sondern auch Gesamtsummen habe, die ich nicht ausblenden möchte (siehe Beispiel):https://www.herber.de/bbs/user/88749.xlsx
Ich habe es nicht geschafft diese Gesamtsummen aus der Gruppierung herauszuhalten, darum versuche ich nun für diese Zeilen am Ende des Makros die Gruppierung aufzuheben. Ich erhalte mit dem folgenden Code aber eine Fehlermeldung.
For ErsteZeile = 3 To LetzteZeile
If Cells(ErsteZeile, 3).Value = "SUMME" Then
Rows(ErsteZeile).Ungroup
End If
Next
Habt ihr vielleicht eine Idee?
Viele Grüße
Judith
End With