Wir sind auf Ihre Unterstützung angewiesen!
💚 BITTE helfen Sie uns HEUTE mit einer SPENDE 💚
Helfen Sie das LibreOffice Forum zu erhalten!
> KEINE WERBUNG FÜR REGISTRIERTE BENUTZER!<
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗
[gelöst] Calc: Zeilen gruppieren und Gruppierung aufheben
[gelöst] Calc: Zeilen gruppieren und Gruppierung aufheben
Guten Morgen!
Ich will in Calc per Makro Zeilen gruppieren (F12-Taste), die Gruppierung schließen und ggfs. per Makro alle Gruppierunen wieder aufheben.
Ein aufgezeichnetes Makro bringt mir hier mit ".uno:Group" bzw. ".uno:Ungroup" schon die wichtigen Befehle, ich schaffe es aber nicht, diese in mein Makro zu übernehmen.
Leider finde ich zu dem Thema kein passendes Beispiel im Internet und wäre daher für eine kleine Hilfestellung dankbar.
Gruß
Bernhard
Ich will in Calc per Makro Zeilen gruppieren (F12-Taste), die Gruppierung schließen und ggfs. per Makro alle Gruppierunen wieder aufheben.
Ein aufgezeichnetes Makro bringt mir hier mit ".uno:Group" bzw. ".uno:Ungroup" schon die wichtigen Befehle, ich schaffe es aber nicht, diese in mein Makro zu übernehmen.
Leider finde ich zu dem Thema kein passendes Beispiel im Internet und wäre daher für eine kleine Hilfestellung dankbar.
Gruß
Bernhard
Zuletzt geändert von bma am Do 6. Jul 2017, 12:57, insgesamt 1-mal geändert.
Re: Calc: Zeilen gruppieren und Gruppierung aufheben
Jo,
das geht zum Beispiel so:
Beispiel anbei
Gruß R
das geht zum Beispiel so:
Code: Alles auswählen
Sub Gruppierungen_setzen
oSheet = thisComponent.sheets.getbyName("Tabelle1")
for i = 0 to 10
nStart = i*10 + 1
nEnd = nStart + 6
oRangeaddress = oSheet.GetCellRangeByPosition(0,nStart,0,nEnd).RangeAddress
'com.sun.star.table.TableOrientation.COLUMNS
'com.sun.star.table.TableOrientation.ROWS
oSheet.group(oRangeaddress,com.sun.star.table.TableOrientation.ROWS)
oSheet.HideDetail(oRangeaddress)
next i
End Sub
Sub Gruppierungen_aufheben
oSheet = thisComponent.sheets.getbyName("Tabelle1")
for i = 0 to 10
nStart = i*10 + 1
nEnd = nStart + 6
oRangeaddress = oSheet.GetCellRangeByPosition(0,nStart,0,nEnd).RangeAddress
oSheet.ShowDetail(oRangeaddress)
oSheet.ungroup(oRangeaddress,com.sun.star.table.TableOrientation.ROWS)
next i
End Sub
Gruß R
- Dateianhänge
-
- Group_ungroup_ROWS.ods
- (15.28 KiB) 210-mal heruntergeladen
Windows 10: AOO, LO Linux Mint: AOO, LO
Re: Calc: Zeilen gruppieren und Gruppierung aufheben
Perfekt! Vielen Dank!
Bernhard
Bernhard
Re: Calc: Zeilen gruppieren und Gruppierung aufheben
Hallo F3K Total,F3K Total hat geschrieben: ↑Do 6. Jul 2017, 12:36Jo,
das geht zum Beispiel so:Beispiel anbeiCode: Alles auswählen
Sub Gruppierungen_setzen oSheet = thisComponent.sheets.getbyName("Tabelle1") for i = 0 to 10 nStart = i*10 + 1 nEnd = nStart + 6 oRangeaddress = oSheet.GetCellRangeByPosition(0,nStart,0,nEnd).RangeAddress 'com.sun.star.table.TableOrientation.COLUMNS 'com.sun.star.table.TableOrientation.ROWS oSheet.group(oRangeaddress,com.sun.star.table.TableOrientation.ROWS) oSheet.HideDetail(oRangeaddress) next i End Sub Sub Gruppierungen_aufheben oSheet = thisComponent.sheets.getbyName("Tabelle1") for i = 0 to 10 nStart = i*10 + 1 nEnd = nStart + 6 oRangeaddress = oSheet.GetCellRangeByPosition(0,nStart,0,nEnd).RangeAddress oSheet.ShowDetail(oRangeaddress) oSheet.ungroup(oRangeaddress,com.sun.star.table.TableOrientation.ROWS) next i End Sub
Gruß R
ich suche eine Möglichkeit bereits vorhandene Gruppierungen / Gliederungen in einem definierten Bereich mittels Makro aufzuklappen und wieder zuzuklappen. Habe es auch bereits hier gepostet, aber scheint schwierig zu sein, denn bisher habe ich keine Rückmeldung erhalten.
viewtopic.php?f=12&t=39470
Dein Makro hier im Post hingegen erstellt und entfernt Gruppierungen / Gliederungen. Hast du vielleicht einen Lösungsansatz, Vorschlag für meine Problemstellung?
Vielen Dank und Grüße
Ubuntu 22.04.2 LTS / Windows 11 / LO 7.3.7.2
Re: [gelöst] Calc: Zeilen gruppieren und Gruppierung aufheben
Moin,
alle Gruppierungen im benutzen Bereich ein/ausblenden:
Und wenn du dieses Makro an einen Button bindest, der folgenden Titel hat: Gruppierungen auf Tabelle 1 ausblenden
erzeugst du eine Umschalter:
Beispieldatei anbei.
Gruß R
alle Gruppierungen im benutzen Bereich ein/ausblenden:
Code: Alles auswählen
sub Gruppierungen_einblenden
oSheet = ThisComponent.Sheets.getbyName("Tabelle1")
oCursor = oSheet.createCursor
oCursor.gotoStart
oCursor.GotoEndofUsedArea(true)
oRangeaddress = oCursor.RangeAddress
oSheet.ShowDetail(oRangeaddress)
end sub
sub Gruppierungen_ausblenden
oSheet = ThisComponent.Sheets.getbyName("Tabelle1")
oCursor = oSheet.createCursor
oCursor.gotoStart
oCursor.GotoEndofUsedArea(true)
oRangeaddress = oCursor.RangeAddress
oSheet.HideDetail(oRangeaddress)
end sub
erzeugst du eine Umschalter:
Code: Alles auswählen
sub Gruppierungen_ausblenden_Einblenden(oEvent)
oButton = oEvent.Source.model
oSheet = ThisComponent.Sheets.getbyName("Tabelle1")
oCursor = oSheet.createCursor
oCursor.gotoStart
oCursor.GotoEndofUsedArea(true)
oRangeaddress = oCursor.RangeAddress
if oButton.label = "Gruppierungen auf Tabelle 1 ausblenden" then
oButton.label = "Gruppierungen auf Tabelle 1 einblenden"
oSheet.HideDetail(oRangeaddress)
else
oButton.label = "Gruppierungen auf Tabelle 1 ausblenden"
oSheet.ShowDetail(oRangeaddress)
endif
end sub
Gruß R
- Dateianhänge
-
- Gruppierte_Zellen_ein_ausblenden.ods
- (39.29 KiB) 15-mal heruntergeladen
Windows 10: AOO, LO Linux Mint: AOO, LO
Re: [gelöst] Calc: Zeilen gruppieren und Gruppierung aufheben
Hallo F3k Total,
danke schon mal für deine schnelle Hilfe.
Ich würde das gern auf einen Begrenzten Zeilen-Bereich anwenden wollen, denn nur diese Gruppierungen und nicht alle sollen ein- und wieder ausgeblendet werden.
Im Idealfall würde ich das gern über einen ToggleButton ein- und wieder ausblenden wollen und die Beschriftung und Farbe des Button entsprechend anpassen. Aber das funktioniert so irgendwie nicht.
Problemstellung zus. ist noch das der ToggleButton in Tabelle2 ist und die Gruppierungen in Tabelle1 im Bereich A200:A500.
Kannst du mir auch hier weiterhelfen?
Danke!
danke schon mal für deine schnelle Hilfe.
Ich würde das gern auf einen Begrenzten Zeilen-Bereich anwenden wollen, denn nur diese Gruppierungen und nicht alle sollen ein- und wieder ausgeblendet werden.
Im Idealfall würde ich das gern über einen ToggleButton ein- und wieder ausblenden wollen und die Beschriftung und Farbe des Button entsprechend anpassen. Aber das funktioniert so irgendwie nicht.
Problemstellung zus. ist noch das der ToggleButton in Tabelle2 ist und die Gruppierungen in Tabelle1 im Bereich A200:A500.
Code: Alles auswählen
Sub ToggleGruppenDepots()
Dim sheet As Object
Dim groups As Object
Dim button As Object
sheet = ThisComponent.Sheets.getByName("Tabelle1")
groups = sheet.Rows
button = sheet.DrawPage.Forms.getByName("ToggleButton")
If Not button Is Nothing Then
' Ändere die Beschriftung und Farbe des Buttons im Wechsel
If button.Label = "Gruppen öffnen" Then
button.Label = "Gruppen schließen"
button.BackgroundColor = RGB(255, 0, 0) ' Ändere die Farbe nach Bedarf
Gruppierungen_einblenden 'F3K Total Makro
Else
button.Label = "Gruppen öffnen"
button.BackgroundColor = RGB(0, 255, 0) ' Ändere die Farbe nach Bedarf
Gruppierungen_ausblenden 'F3K Total Makro
End If
End If
End Sub
Danke!
Ubuntu 22.04.2 LTS / Windows 11 / LO 7.3.7.2
Re: [gelöst] Calc: Zeilen gruppieren und Gruppierung aufheben
Bitteschön
- Dateianhänge
-
- Gruppierte_Zellen_ein_ausblenden.ods
- (36.78 KiB) 18-mal heruntergeladen
Windows 10: AOO, LO Linux Mint: AOO, LO
Re: [gelöst] Calc: Zeilen gruppieren und Gruppierung aufheben
Hallo F3k Total,
sieht schon echt super aus, vielen Dank.
Ich würde das gerne aber noch nur auf einen definierten Zeilenbereich einschränken wollen und damit eben nur gezielt dort die Aktion ausführen wollen und alle anderen Gruppierungen in Tabelle 1 unberührt lassen.
Vielen Dank und Gruß
sieht schon echt super aus, vielen Dank.
Ich würde das gerne aber noch nur auf einen definierten Zeilenbereich einschränken wollen und damit eben nur gezielt dort die Aktion ausführen wollen und alle anderen Gruppierungen in Tabelle 1 unberührt lassen.
Vielen Dank und Gruß
Ubuntu 22.04.2 LTS / Windows 11 / LO 7.3.7.2
Re: [gelöst] Calc: Zeilen gruppieren und Gruppierung aufheben
Wenn du dir das Makro mal ansehen würdest, müsstest du feststellen, dass es genau so ist:
R
Nun sollte es mal reichen, bissel Eigeninitiative könntest du auch an den Tag legen.R
Windows 10: AOO, LO Linux Mint: AOO, LO
Re: [gelöst] Calc: Zeilen gruppieren und Gruppierung aufheben
Hallo F3K Total,
hm, vermutlich hatte ich die alte Datei geöffnet, sorry.
Vielen Dank für deine Mühe und Geduld!
hm, vermutlich hatte ich die alte Datei geöffnet, sorry.
Vielen Dank für deine Mühe und Geduld!
Ubuntu 22.04.2 LTS / Windows 11 / LO 7.3.7.2
An alle, die das LibreOffice-Forum nutzen:
Bitte beteiligen Sie sich mit 7 Euro pro Monat und helfen uns bei unserem Budget für das Jahr 2024.
Einfach per Kreditkarte oder PayPal.
Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet.
❤️ Vielen lieben Dank für Ihre Unterstützung ❤️