🙏 Helfen Sie mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱
🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀
>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗
Leerzeilen löschen
Leerzeilen löschen
Moin, moin liebe Leute,
ich brauche eure Hilfe. Ich breche mein Problem mal auf das absolut Notwendige herunter: Ich habe eine Spalte (A, bzw. 0) und in dieser Spalte 8 Einträge. Der letzte Spalteneintrag befindet sich in Zeile 10 – also befinden sich einige Leerzeilen in der Spalte. Und diese möchte ich mit einem Befehl oder Algorithmus löschen. In meinem konkreten Problem habe ich über 14.000 Zeilen, in denen sich eine unbekannte Anzahl von Leerzeilen befindet – aber das nur nebenbei. Nach stundenlanger Recherche bin ich immer nur darauf gestoßen, wie man in Calc diese leeren Zeilen löschen kann, sodass man einen lückenlosen Bereich erhält. Aber in LibreOffice Basic? Fehlanzeige! Der Code von VBA funtzt nicht, auch nicht mit >Option VBASupport 1<. Für jede Hilfe oder jeden Hinweis bedanke ich mich schon mal im voraus. Danke, danke, danke!
ich brauche eure Hilfe. Ich breche mein Problem mal auf das absolut Notwendige herunter: Ich habe eine Spalte (A, bzw. 0) und in dieser Spalte 8 Einträge. Der letzte Spalteneintrag befindet sich in Zeile 10 – also befinden sich einige Leerzeilen in der Spalte. Und diese möchte ich mit einem Befehl oder Algorithmus löschen. In meinem konkreten Problem habe ich über 14.000 Zeilen, in denen sich eine unbekannte Anzahl von Leerzeilen befindet – aber das nur nebenbei. Nach stundenlanger Recherche bin ich immer nur darauf gestoßen, wie man in Calc diese leeren Zeilen löschen kann, sodass man einen lückenlosen Bereich erhält. Aber in LibreOffice Basic? Fehlanzeige! Der Code von VBA funtzt nicht, auch nicht mit >Option VBASupport 1<. Für jede Hilfe oder jeden Hinweis bedanke ich mich schon mal im voraus. Danke, danke, danke!
Re: Leerzeilen löschen
Hallo
Die »nix mit Makro« -methode:
⇒ Daten ⇒ Weitere Filter ⇒ Standardfilter :
»Spalte A« »=« »nicht leer«
⇒⇒ Optionen:
[x]Ausgabe nach <wohin immer du möchtest>
ps. vor gut Fünf Wochen hattest du ja schon mal im Prinzip die gleiche Frage… sind die Erkenntnisse daraus im Sommerloch verschwunden?
Die »nix mit Makro« -methode:
⇒ Daten ⇒ Weitere Filter ⇒ Standardfilter :
»Spalte A« »=« »nicht leer«
⇒⇒ Optionen:
[x]Ausgabe nach <wohin immer du möchtest>
ps. vor gut Fünf Wochen hattest du ja schon mal im Prinzip die gleiche Frage… sind die Erkenntnisse daraus im Sommerloch verschwunden?
LO7.4.7.5 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.0.3 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.0.3 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
Re: Leerzeilen löschen
Hallo,
ich habe mich mal wieder in Python versucht:
Ergänzumg/Korrektur:
Anstelle von
besser
ich habe mich mal wieder in Python versucht:
Code: Alles auswählen
def leerzeilen_entfernen():
doc = XSCRIPTCONTEXT.getDocument()
tab= doc.Sheets[0]
leer = tab.Columns.A.queryEmptyCells()[::-1][1:]
for leerzeilen in leer:
otab.Rows.removeByIndex(leerzeilen.Rows[0].RangeAddress.StartRow, leerzeilen.Rows.Count)
Anstelle von
Code: Alles auswählen
oleer = otab.Columns.A.queryEmptyCells()[::-1][1:]
Code: Alles auswählen
oleer = otab.Columns.A.queryEmptyCells()[-2::-1]
Gruß,
mikele
mikele
Re: Leerzeilen löschen
Hallo Mikele
ohne »o«
und von oben nach unten direkt auf den »Rows« der »leerzeilen«:
ohne »o«

Code: Alles auswählen
def leerzeilen_entfernen():
doc = XSCRIPTCONTEXT.getDocument()
tab= doc.Sheets[0]
leer = tab.Columns.A.queryEmptyCells()[:-1]
for leerzeilen in leer:
leerzeilen.Rows.removeByIndex(0, leerzeilen.Rows.Count)
LO7.4.7.5 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.0.3 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.0.3 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
Re: Leerzeilen löschen
Hallo karolus,
na klar - removeByIndex() auf die leerzeilen(bereiche) anwenden und nicht auf die ganze Tabelle ...
na klar - removeByIndex() auf die leerzeilen(bereiche) anwenden und nicht auf die ganze Tabelle ...

Gruß,
mikele
mikele
An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:
Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.