🙏 Helfen Sie jetzt 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. 🤗
Tabelle: Spalten anfügen, OHNE Breite anderer Spalten zu verändern
Tabelle: Spalten anfügen, OHNE Breite anderer Spalten zu verändern
Liebe Foren-Kolleg_innen,
meine Frage betrifft einen sehr häufigen Vorgang, ich vermute daher, dass es eine entsprechende Instellung in Writer gibt, habe aber auf Anhieb keine Lösung gefunden.
Problem:
- Ich habe eine Tabelle, die ich nach meinen Vorstellungen formatiert habe.
- Nun möchte ich ganz einfach eine (oder mehrere) Spalten rechts anfügen.
- Mache ich das mittels Einfügen/Spalten rechts, Einfügen/Spalten... oder mit dem entsprechenden Button, wird zwar eine Spalte angefügt, die in ihren Dimensionen derjenigen gleicht, in der ich meinen Cursor stehen hatte;
ABER leider werden automatisch auch die Spaltenbreiten der links der neu eingefügten Spalten verändert.
Das macht mich verrückt, nach jeder Erweiterung einer Tabelle muss ich sie insgesamt neu formatieren - sehr unpraktisch!
Logisch wäre ein solches Verhalten nur, wenn durch die neu angefügten Spalten ein Teil der Tabelle vom Blatt verdrängt würde.
Es ist mir ehrlich gesagt schleierhaft, wie ein solches Verhalten als Default vorgesehen werden konnte,
aber wenn es eine Einstellung gibt, dieses Verhalten einfach zu ändern, sei es mir recht.
Frage:
--> Gibt es also eine Einstellung, mit der ich festlegen kann, dass hinzugefügte Spalten den Rest der Tabelle einfach völlig unverändert lassen; und wo kann ich sie finden?
Ich danke im Voraus für eure Hilfe.
Grüße aus Wien!
meine Frage betrifft einen sehr häufigen Vorgang, ich vermute daher, dass es eine entsprechende Instellung in Writer gibt, habe aber auf Anhieb keine Lösung gefunden.
Problem:
- Ich habe eine Tabelle, die ich nach meinen Vorstellungen formatiert habe.
- Nun möchte ich ganz einfach eine (oder mehrere) Spalten rechts anfügen.
- Mache ich das mittels Einfügen/Spalten rechts, Einfügen/Spalten... oder mit dem entsprechenden Button, wird zwar eine Spalte angefügt, die in ihren Dimensionen derjenigen gleicht, in der ich meinen Cursor stehen hatte;
ABER leider werden automatisch auch die Spaltenbreiten der links der neu eingefügten Spalten verändert.
Das macht mich verrückt, nach jeder Erweiterung einer Tabelle muss ich sie insgesamt neu formatieren - sehr unpraktisch!
Logisch wäre ein solches Verhalten nur, wenn durch die neu angefügten Spalten ein Teil der Tabelle vom Blatt verdrängt würde.
Es ist mir ehrlich gesagt schleierhaft, wie ein solches Verhalten als Default vorgesehen werden konnte,
aber wenn es eine Einstellung gibt, dieses Verhalten einfach zu ändern, sei es mir recht.
Frage:
--> Gibt es also eine Einstellung, mit der ich festlegen kann, dass hinzugefügte Spalten den Rest der Tabelle einfach völlig unverändert lassen; und wo kann ich sie finden?
Ich danke im Voraus für eure Hilfe.
Grüße aus Wien!
-
- * LO-Experte *
- Beiträge: 3342
- Registriert: Fr 3. Mär 2017, 17:12
Re: Tabelle: Spalten anfügen, OHNE Breite anderer Spalten zu verändern
Hallo,
Gruß Peter
Spalten werden nicht angefügt, sondern nur in die bestehende Tabelle eingefügt.Nun möchte ich ganz einfach eine (oder mehrere) Spalten rechts anfügen.
Gruß Peter
Win 11 (x64) ▪ LO 25.2.5.1 (x64) ▪ AOO Portable 4.1.15
Wenn Eure Frage zutreffend beantwortet wurde, seid so nett und fügt dem Betreff der Eingangsfrage [GELÖST] hinzu.
Wenn Eure Frage zutreffend beantwortet wurde, seid so nett und fügt dem Betreff der Eingangsfrage [GELÖST] hinzu.
-
- * LO-Experte *
- Beiträge: 3041
- Registriert: Mo 12. Nov 2012, 16:59
Re: Tabelle: Spalten anfügen, OHNE Breite anderer Spalten zu verändern
Dem ist nicht so. Diese Spalte wird ebenfalls schmaler. Übrigens ist es völlig gleich, ob man die Spalte vor oder nach der betreffenden einfügt. Einzig die Tabellenbreite bleibt unverändert. (Jedenfalls stimmt meine Feststellung bei leerer Tabelle.)volvox hat geschrieben: ↑Mo 4. Mär 2019, 08:37... Mache ich das mittels Einfügen/Spalten rechts, Einfügen/Spalten... oder mit dem entsprechenden Button, wird zwar eine Spalte angefügt, die in ihren Dimensionen derjenigen gleicht, in der ich meinen Cursor stehen hatte;
ABER leider werden automatisch auch die Spaltenbreiten der links der neu eingefügten Spalten verändert...
...
Nein, für deinen Wunsch habe ich derzeit auch keine Lösung.
LO 24.8.7.2 (X86_64) / Windows 11 64bit
Problem gelöst? Dann bitte im Betreff der ersten Nachricht [gelöst] voranstellen.
Problem gelöst? Dann bitte im Betreff der ersten Nachricht [gelöst] voranstellen.
Re: Tabelle: Spalten anfügen, OHNE Breite anderer Spalten zu verändern
@ Pit Zyclade:
Stimmt, du hast, recht, auch die anderen Spalten werden in ihrer Breite verändert.
Schade, dass man das Verhalten diesbezüglich scheinbar nicht festlegen kann; aber vielleicht kommt das ja noch
Danke jedenfalls für dein Bemühen.
@ Mondblatt24:
Nun, ich habe das absichtlich so formuliert, um meine Ausgangssituation möglichst genau zu beschreiben (da ich kein Bild raufladen kann);
Anfügen beschreibt, wie ich meine sprachlich korrekt, das Hinzufügen von Spalten an ein Ende einer Tabelle, das Einfügen das Hinzufügen im Binnenbereich einer Tabelle, also an einer Stelle, an der sowohl links als auch rechts mindestens eine Spalte liegt
(Mag sein, dass in der Dokumentation von LO immer nur von Einfügen die Rede ist)
Wie dem auch sei, draußen scheint die Sonne
LG
Stimmt, du hast, recht, auch die anderen Spalten werden in ihrer Breite verändert.
Schade, dass man das Verhalten diesbezüglich scheinbar nicht festlegen kann; aber vielleicht kommt das ja noch

Danke jedenfalls für dein Bemühen.
@ Mondblatt24:
Nun, ich habe das absichtlich so formuliert, um meine Ausgangssituation möglichst genau zu beschreiben (da ich kein Bild raufladen kann);
Anfügen beschreibt, wie ich meine sprachlich korrekt, das Hinzufügen von Spalten an ein Ende einer Tabelle, das Einfügen das Hinzufügen im Binnenbereich einer Tabelle, also an einer Stelle, an der sowohl links als auch rechts mindestens eine Spalte liegt

(Mag sein, dass in der Dokumentation von LO immer nur von Einfügen die Rede ist)
Wie dem auch sei, draußen scheint die Sonne

LG
Re: Tabelle: Spalten anfügen, OHNE Breite anderer Spalten zu verändern
Hallo volvox,
ich wollte es wissen: Mit folgendem Makro, wird rechts an die Tabelle, in der der Cursor steht, eine 1 cm breite Spalte angehängt,
Beispieldatei anbei.
Damit das Makro laufen darf, stellst du unter Extras/Einstellungen/Openoffice/Sicherheit/Makrosicherheit oder Extras/Optionen/LibreOffice/Sicherheit/Makrosicherheit mindestens die Stufe Mittel ein, dann wirst du beim Öffnen von Dokumenten gefragt, ob du Makros ausführen möchtest.
Gruß R
ich wollte es wissen: Mit folgendem Makro, wird rechts an die Tabelle, in der der Cursor steht, eine 1 cm breite Spalte angehängt,
Beispieldatei anbei.
Code: Alles auswählen
Sub Insert_one_column
oTexttable = thiscomponent.Currentselection(0).Texttable
oTexttable.HoriOrient = 3
nWidth = oTexttable.Width
nColumnWidth = 1000 '1 cm
oColumns = oTexttable.Columns
nCount = oColumns.count
oTableColumnSeparators = oTexttable.TableColumnSeparators
dim nPos(nCount-1) as integer
for i = 0 to uBound(oTableColumnSeparators)
nPos(i) = oTableColumnSeparators(i).Position * nWidth /(nWidth + nColumnWidth)
next i
nPos(i) = 10000 * nWidth /(nWidth + nColumnWidth)'neue Spalte beginnt bei der alten Breite
oColumns.insertByIndex( nCount, 1)
oTableColumnSeparators = oTexttable.TableColumnSeparators
for i = 0 to uBound(oTableColumnSeparators)
oTCSs = oTableColumnSeparators
oTCS = oTCSs(i)
oTCS.Position = nPos(i)
oTCSs(i)= oTCS
next i
oTexttable.Width = oTexttable.Width + nColumnWidth 'Tabelle breiter machen
oTexttable.TableColumnSeparators = oTCSs 'Spalten wieder ausrichten
End Sub
Gruß R
- Dateianhänge
-
- Tabellenspalte_zufuegen.odt
- (12.15 KiB) 141-mal heruntergeladen
Windows 11: AOO, LO Linux Mint: AOO, LO
Re: Tabelle: Spalten anfügen, OHNE Breite anderer Spalten zu verändern
Hallo,
hatte ich gestern noch vor, habe es aber nicht mehr geschafft. Folgendes Makro fügt eine Spalte ein, die die verfügbare Seitenbreite exakt ausnutzt, d.h. die Tabelle ist nach dem Einfügen der Spalte genau so breit, wie dier beschreibbare Bereich der aktuellen Seite.
Alle vorigen Spalten bleiben in ihrer Breite erhalten.
Gruß R
hatte ich gestern noch vor, habe es aber nicht mehr geschafft. Folgendes Makro fügt eine Spalte ein, die die verfügbare Seitenbreite exakt ausnutzt, d.h. die Tabelle ist nach dem Einfügen der Spalte genau so breit, wie dier beschreibbare Bereich der aktuellen Seite.
Alle vorigen Spalten bleiben in ihrer Breite erhalten.
Code: Alles auswählen
Sub Insert_one_column
oSel = thiscomponent.Currentselection(0)
oTexttable = thiscomponent.Currentselection(0).Texttable
oTexttable.HoriOrient = 3
sPageStyle = oSel.PageStyleName
oStyle = Thiscomponent.StyleFamilies.PageStyles.getbyName(sPageStyle)
nPW = oStyle.Width
nPRM = oStyle.RightMargin
nPLM = oStyle.LeftMargin
nWidth = oTexttable.Width
nColumnWidth = nPW - nPRM - nPLM - nWidth
oColumns = oTexttable.Columns
nCount = oColumns.count
oTableColumnSeparators = oTexttable.TableColumnSeparators
dim nPos(nCount-1) as integer
for i = 0 to uBound(oTableColumnSeparators)
nPos(i) = oTableColumnSeparators(i).Position * nWidth /(nWidth + nColumnWidth)
next i
nPos(i) = 10000 * nWidth /(nWidth + nColumnWidth)'neue Spalte beginnt bei der alten Breite
oColumns.insertByIndex( nCount, 1)
oTableColumnSeparators = oTexttable.TableColumnSeparators
for i = 0 to uBound(oTableColumnSeparators)
oTCSs = oTableColumnSeparators
oTCS = oTCSs(i)
oTCS.Position = nPos(i)
oTCSs(i)= oTCS
next i
oTexttable.Width = oTexttable.Width + nColumnWidth 'Tabelle breiter machen
oTexttable.TableColumnSeparators = oTCSs 'Spalten wieder ausrichten
End Sub
- Dateianhänge
-
- Tabellenspalte_zufuegen.odt
- (12.29 KiB) 158-mal heruntergeladen
Windows 11: AOO, LO Linux Mint: AOO, LO
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.