Libre Office

Leere Zeile einfügen

Alles zur Programmierung im LibreOffice.
Antworten
kl_ha
Beiträge: 24
Registriert: Sa 20. Aug 2016, 17:11
Wohnort: Hamburg
Kontaktdaten:

Leere Zeile einfügen

Beitrag von kl_ha » Mo 9. Jan 2017, 18:38

Hallo
Ich suche seit Stunden eine Leere Zeile in mein Dokument einzufügen. Wie ich es auch versuche ich bekomme eine Fehlermeldung:

BASIC-Laufzeitfehler.
Es ist eine Ausnahme aufgetreten
Type: com.sun.star.uno.RuntimeException
Message: .

Code: Alles auswählen

doc=ThisComponent
sheet = doc.Sheets.getByName("Investments")
sheet.Rows.insertByIndex(5,1)
oder
sheet.getRows.insertByIndex(5,1)
oder 
sheet.getRows().insertByIndex(5,1)
Komme da nicht weiter.
Vielleicht kann mir ja von euch jemand weiterhelfen.

Nachtrag:
Ich habe versucht händisch eine Leerzeile einzufügen.
Bekomme die Fehlermeldung:
"Ausgefüllte Zellen können nicht über
die Tabelle hinaus verschoben werden."

So richtig deuten kann ich die Fehlermeldung nicht.
Gefüllt ist die Tabelle nur bis Zeile 31.
Klaus

craig
* LO-Experte *
Beiträge: 1137
Registriert: Do 21. Apr 2016, 11:42

Re: Leere Zeile einfügen

Beitrag von craig » Mo 9. Jan 2017, 19:37

Hallo Klaus,

in dieser Codezeile den Tabellenblattnamen (Investments) überprüfen:

Code: Alles auswählen

sheet = doc.Sheets.getByName("Investments")
Ggf. hat sich im Blattnamen ein Leerzeichen vor "Investments" oder nach "Investments" eingeschlichen.

Dies ist korrekt und funktioniert bei mir:

Code: Alles auswählen

sheet.getRows().insertByIndex(5,1)
Gruß

Craig

Nie die Sicherungskopie vergessen!

════════════════════════════════════════════════
WIN 10 Pro 64-Bit • LO 7.4.5.1 (x64) • AOO 4.1.8

kl_ha
Beiträge: 24
Registriert: Sa 20. Aug 2016, 17:11
Wohnort: Hamburg
Kontaktdaten:

Re: Leere Zeile einfügen

Beitrag von kl_ha » Mo 9. Jan 2017, 19:56

Hallo Craig

Die Lösung bei einer gefüllten Tabelle scheint wohl eine Leere Zeile Löschen und eine Leere Zeile an der gewünschten Adresse einfügen.
So funktioniert es bei mir jedenfalls.

Code: Alles auswählen

sheet.Rows.removeByIndex(32,1)
sheet.Rows.insertByIndex(5,1)
Wahrscheinlich nicht die sauberste Lösung

Open Office
Antworten