Gruppierung via VBA steuern - Doppelklick

Bild

Betrifft: Gruppierung via VBA steuern - Doppelklick
von: Rudolf Darr
Geschrieben am: 10.08.2015 14:49:14

Hallo Forum!
ich habe schon des Öfteren hier nach Lösungen für diverse Probleme mit Excel gesucht und bin meistens fündig geworden, ich finde es echt klasse dass so viele engagierte Mitglieder hier ihr Wissen teilen! Respekt! :-D
Nun habe ich wieder eine kleine Schwierigkeit mit Excel und hoffe ihr könnt mir dabei behilflich sein. Ich habe auf meinem Tabellenblatt eine Art Baumstruktur mit 4 Ebenen aufgebaut und durch die Gruppieren-Funktion geordnet. Auf- und Zuklappen mit den + und - Buttons auf der linken Bildschirmseite funktioniert einwandfrei.
Jetzt möchte ich noch einen Schritt weiter gehen und das Ganze mittels VBA durch Doppelklicks auf die jeweilige Klasse des Strukturbaums öffnen und schließen lassen.
Ich habe bereits einen Code der das Aufklappen einwandfrei erledigt:


Sub HideUnhideGroup(iRow As Integer)
     
     Dim strExecute As String
     strExecute = "Show.Detail(1," & iRow + 1 & ",True)"
     ExecuteExcel4Macro strExecute
 
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Call HideUnhideGroup(Target.Row)
    
 End Sub

Auch das Zuklappen an sich funktioniert ja durch das Austauschen von "True" durch "False" innerhalb der Show.Detail-Funktion bestens.
Nun soll es aber so sein, dass geschlossene Gruppierungen durch einen Doppelklick auf die Zelle in der die Klasse steht geöffnet und bereits geöffnete Gruppierungen durch einen Doppelklick auf die selbe Stelle geschlossen werden.
Nach meiner Logik bräuchte ich dafür ja irgend einen Wert, den ich mittels IF dazu verwenden kann, um die richtige Variante der Show.Detail auszuwählen. So eine Art Abfrage, ob die Gruppierung geöffnet oder geschlossen ist(?)
Ich hoffe mein Anliegen ist verständlich, falls nicht versuche ich natürlich alles um es besser zu beschreiben :-)
Ich hoffe jemand kann mir dabei helfen und bedanke mich schon mal im Voraus für die Mühe!
Viele Grüße
Rudi

Bild

Betrifft: AW: Gruppierung via VBA steuern - Doppelklick
von: Rudi Maintaire
Geschrieben am: 10.08.2015 15:52:12
Hallo,
teste mal:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
  Target.EntireRow.ShowDetail = Not Target.EntireRow.ShowDetail
  Cancel = True
End Sub

Gruß
Rudi

Bild

Betrifft: AW: Gruppierung via VBA steuern - Doppelklick
von: Rudolf Darr
Geschrieben am: 10.08.2015 16:03:49
Hallo Rudi,
vielen Dank für die schnelle Antwort. Gute Nachricht: An und für sich funktioniert es so wie ich mir es vorstelle :-D
Leider klappt aber immer der Zweig der Gruppierung über dem Zweig bzw. der Zelle auf/zu, auf den ich Doppelklicke...

Bild

Betrifft: AW: Gruppierung via VBA steuern - Doppelklick
von: Rudolf Darr
Geschrieben am: 10.08.2015 16:10:21
Ich sehe auch gerade dass es leider für die 1. Ebene der Gruppierung nicht funktioniert, es erscheint die Fehlermeldung "Laufzeitfehler "1004": Die ShowDetail-Eigenschaft des Range-Objektes kann nicht festgestellt werden."

Bild

Betrifft: lad mal deine Mappe hoch. owT
von: Rudi Maintaire
Geschrieben am: 10.08.2015 16:31:57


Bild

Betrifft: AW: lad mal deine Mappe hoch. owT
von: Rudolf Darr
Geschrieben am: 10.08.2015 16:42:28
Ok, erledigt :-)
https://www.herber.de/bbs/user/99472.xlsm

Bild

Betrifft: AW: lad mal deine Mappe hoch. owT
von: Rudolf Darr
Geschrieben am: 11.08.2015 07:12:53
Ich komm leider nicht drauf wie ich die richtige Gruppierung zum Aufklappen bringe, wie gesagt das Auf- und Zuklappen funktioniert ja perfekt, leider klappt immer der Zweig der Baumstruktur eine Zelle weiter oben auf/zu anstelle des Zweigs, auf den ich Doppelklicke >.<

Bild

Betrifft: AW: lad mal deine Mappe hoch. owT
von: Rudi Maintaire
Geschrieben am: 11.08.2015 10:03:26
Hallo,
entferne in den Gliederungseinstellungen den Haken bei 'Hauptzeilen unter Detaildaten'.
Gruß
Rudi

Bild

Betrifft: AW: lad mal deine Mappe hoch. owT
von: Rudolf Darr
Geschrieben am: 11.08.2015 10:49:18
Juhu es funktioniert! :-D
Wie gut, vielen vielen Dank! Besser hätte die Hilfestellung echt nicht sein können!

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Gruppierung via VBA steuern - Doppelklick"