Tabellenzeile verschieben?

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

steven11
**
Beiträge: 25
Registriert: So, 11.02.2007 10:55

Tabellenzeile verschieben?

Beitrag von steven11 »

Hi,
wie kann man bei einer XTextTable im Writer eine Zeile um 1 nach oben/unten verschieben?

Falls das nicht direkt unterstützt wird: wie kopiert man den Inhalt einer Zeile in eine andere?

mfg Steven
Toxitom
********
Beiträge: 3769
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hey Steven,

hmm, verschieben??? geht - glaube ich - nicht.

Aber: Das "Verschieben erreichst du doch auch durch löschen der darüberliegenden Zeile und einfügen eine zusätzlichen Zeile darunter, oder?

Das ginge:

Code: Alles auswählen

oTabelle.getRows.removeByIndex(2,1) 'entfernt die dritte Zeile
oTabelle.getRows().insertByIndex(2,1) 'fügt an der dritten Zeile eine Zeile ein
Vielleicht hilfts?
Ansonsten kannst du natürlich den Inhalt aller Zellen einer Zeile auslesen und in eine andere Zeile schreiben. Dann musst du aber auch die Formatierung neu schreiben - also duetlich mehr Aufwand ;-)

Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
steven11
**
Beiträge: 25
Registriert: So, 11.02.2007 10:55

Beitrag von steven11 »

Danke für den Hinweis! Das Problem ist/war, dass die Zeile, die unter der einzufügenden Zeile ist, eine andere Zellenanzahl hatte (gemergte Zellen) - d.h. wenn ich über insertByIndex() die Zeile an der korrekten Position einfüge, kommt eine falsche Zellenzahl...

Ich habe es jetzt aber so gelöst, dass ich eine Zeile einfüge, dann den Inhalt der Zeile darunter in diese Zeile reinkopiere und dann erst die korrekte Zeile fülle. Klingt ein bisschen kompliziert, ich kann es aber leider nicht einfacher erklären - aber Hauptsache, es funzt jetzt :-)
Antworten