❤️ Helfen Sie noch heute, unser LibreOffice Forum zu erhalten! ❤️
>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗
MTRANS() "dynamisch"?
MTRANS() "dynamisch"?
Ich habe eine Tabelle mit Datensätzen die in 4 Spalten aufgeteilt sind.
Feld 01 | Wert 01 | Feld 13 | Wert 13
Feld 02 | Wert 02 | Feld 14 | Wert 14
Feld 03 | Wert 03| Feld 15 | Wert 15
Feld 04 | Wert 04 | Feld 16 | Wert 16
Feld 05 | Wert 05 | Feld 17 | Wert 17
...
Feld 12 | Wert 12 | Feld 24 | Wert 24
Nun möchte ich daraus auf separatem Tabellenblatt eine sauber Tabelle erstellen mit einer Zeile pro Datensatz:
Feld 01 | Feld 02 | Feld 03 | Feld 04 | ... | Feld 24
Wert 01 | Wert 02 | Wert 03 | Wert 04 | ... | Wert 24
Im neuen Tabellenblatt steht dann als Matrixformel z.B. in
A1: ={MTRANS(Tabelle1.A2:A13)}
M1: ={MTRANS(Tabelle1.C2:C13)}
A2: ={MTRANS(Tabelle1.B2:B13)}
M2: ={MTRANS(Tabelle1.C2:C13)}
Wie bekomme ich die weiteren Zeilen dynamisch hin?
Oder gibt es eine andere Lösung, die ich aktuell nicht sehe?
VG
Hylli
Feld 01 | Wert 01 | Feld 13 | Wert 13
Feld 02 | Wert 02 | Feld 14 | Wert 14
Feld 03 | Wert 03| Feld 15 | Wert 15
Feld 04 | Wert 04 | Feld 16 | Wert 16
Feld 05 | Wert 05 | Feld 17 | Wert 17
...
Feld 12 | Wert 12 | Feld 24 | Wert 24
Nun möchte ich daraus auf separatem Tabellenblatt eine sauber Tabelle erstellen mit einer Zeile pro Datensatz:
Feld 01 | Feld 02 | Feld 03 | Feld 04 | ... | Feld 24
Wert 01 | Wert 02 | Wert 03 | Wert 04 | ... | Wert 24
Im neuen Tabellenblatt steht dann als Matrixformel z.B. in
A1: ={MTRANS(Tabelle1.A2:A13)}
M1: ={MTRANS(Tabelle1.C2:C13)}
A2: ={MTRANS(Tabelle1.B2:B13)}
M2: ={MTRANS(Tabelle1.C2:C13)}
Wie bekomme ich die weiteren Zeilen dynamisch hin?
Oder gibt es eine andere Lösung, die ich aktuell nicht sehe?
VG
Hylli
Geschäftlich: LibreOffice 7.2.x(als Citrix-Anwendung)
Privat: LibreOffice 7.3.x unter Linux Mint Cinnamon 64bit (jeweils aktuelle Version)
Privat: LibreOffice 7.3.x unter Linux Mint Cinnamon 64bit (jeweils aktuelle Version)
-
Mondblatt24
- * LO-Experte *
- Beiträge: 3468
- Registriert: Fr 3. Mär 2017, 17:12
Re: MTRANS() "dynamisch"?
Hallo,
du könntest
{=MTRANS(VSTAPELN(Bereich Feld 1-12; Bereich Feld 13-24))} verwenden.
Und dementsprechend das Gleiche für die Werte.
Es sei denn, du verwendest die in deiner Signatur angegebene LO Version, dann geht das bei dir nicht.
(VSTAPELN und diverse andere neue Funktionen gibt es seit Version 25.8.)
Gruß
Peter
du könntest
{=MTRANS(VSTAPELN(Bereich Feld 1-12; Bereich Feld 13-24))} verwenden.
Und dementsprechend das Gleiche für die Werte.
Es sei denn, du verwendest die in deiner Signatur angegebene LO Version, dann geht das bei dir nicht.
(VSTAPELN und diverse andere neue Funktionen gibt es seit Version 25.8.)
Gruß
Peter
Win 11 (x64) ▪ LO 25.8.3.2 (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.
Re: MTRANS() "dynamisch"?
Ich gestatte mir, zu bemängeln, dass die neuen Spill-Formeln eben leider nicht dynamisch sind.
Einmalig eingegeben, verharren sie im Spill-Bereich.
Es bleiben halt "herkömmliche" Matrix-Formeln und haben nichts von der Funktionalität derer von Google oder Microsoft.
Sorry dafür, ist aber so …
Gruß Ralf
Einmalig eingegeben, verharren sie im Spill-Bereich.
Es bleiben halt "herkömmliche" Matrix-Formeln und haben nichts von der Funktionalität derer von Google oder Microsoft.
Sorry dafür, ist aber so …
Gruß Ralf
Ein Feedback auf eine gegebene Lösung tut nicht weh und zeigt Querlesern, dass das Problem gelöst ist.
Re: MTRANS() "dynamisch"?
Solange der|die Quellbereiche eine statische Größe haben, und der Ausgabebereich ebenfalls statisch ist, gibts damit ja keine Probleme!RPP63 hat geschrieben: ↑Mo 17. Nov 2025, 18:08Ich gestatte mir, zu bemängeln, dass die neuen Spill-Formeln eben leider nicht dynamisch sind.
Einmalig eingegeben, verharren sie im Spill-Bereich.
Es bleiben halt "herkömmliche" Matrix-Formeln und haben nichts von der Funktionalität derer von Google oder Microsoft.
Sorry dafür, ist aber so …
Eine weitgehend generische Formel für eine unbekannte Zahl von gefüllten Zeilen in Tabelle1:
Code: Alles auswählen
=LET(source;MTRANS(FILTERN(Tabelle1.A:D;Tabelle1.A:A<>""));HSTAPELN(INDEX(source;ZEILE(A1));INDEX(source;ZEILE(A3))))Und um das Problem mit dynamischen Ausgabe-bereichen zu lösen:
Code: Alles auswählen
from com.sun.star.beans import PropertyValue as pv
def resize_FormulaArrays(*_):
doc = XSCRIPTCONTEXT.getDocument()
frame = doc.CurrentController.Frame
disp = XSCRIPTCONTEXT.ctx.ServiceManager.createInstance("com.sun.star.frame.DispatchHelper")
sheet = doc.CurrentController.ActiveSheet
ranges = sheet.queryContentCells(16) #all Formula[range]
for single in ranges:
if (formula:=single.ArrayFormula): # is there a ArrayFormula?
single.clearContents(16) # clear
arg = pv( Name="ToPoint", Value= single[0,0].AbsoluteName)
disp.executeDispatch(frame, ".uno:GoToCell", "", 0, (arg,))
arg = pv( Name="Formula", Value = formula[1:-1] )
disp.executeDispatch(frame, ".uno:InsertMatrix", "", 0, (arg,)) LO25.2.x.y debian 13(trixie) auf Raspberry5 8GB (64bit)
LO25.8.x.y flatpak debian 13(trixie) auf Raspberry5 8GB (64bit)
LO25.8.x.y flatpak debian 13(trixie) auf Raspberry5 8GB (64bit)
Re: MTRANS() "dynamisch"?
Danke mal für die Antworten! Schaue ich mir mal an.
Die Tabelle hat im Übrigen insgesamt über 55.000 Zeilen, die Datensätze sind vom Aufbau her jeweils gleich (groß).
In Microsoft Excel bin ich in dem Zusammenhang auf die Funktion =ZEILENUMBRUCH()gestoßen:
https://excelhero.de/funktionen/excel-z ... -funktion/
Die kann ich in Calc aber nicht verwenden.
Hylli
Die Tabelle hat im Übrigen insgesamt über 55.000 Zeilen, die Datensätze sind vom Aufbau her jeweils gleich (groß).
In Microsoft Excel bin ich in dem Zusammenhang auf die Funktion =ZEILENUMBRUCH()gestoßen:
https://excelhero.de/funktionen/excel-z ... -funktion/
Die kann ich in Calc aber nicht verwenden.
Hylli
Geschäftlich: LibreOffice 7.2.x(als Citrix-Anwendung)
Privat: LibreOffice 7.3.x unter Linux Mint Cinnamon 64bit (jeweils aktuelle Version)
Privat: LibreOffice 7.3.x unter Linux Mint Cinnamon 64bit (jeweils aktuelle Version)
-
Mondblatt24
- * LO-Experte *
- Beiträge: 3468
- Registriert: Fr 3. Mär 2017, 17:12
Re: MTRANS() "dynamisch"?
Wie schon gesagt, nicht mit den Versionen aus deiner Signatur (Verfügbar ab Version 25.8.).
Und die möchtest du in 16.384 Spalten transponieren??
Win 11 (x64) ▪ LO 25.8.3.2 (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.
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.