1a-zuhause hat geschrieben: Mo, 11.01.2021 14:24
Servus Community,
vielleicht seit ihr ja bisschen schlauer als ich

... Ich knobel seit Wochen an einem Problem, finde den Fehler aber nicht und kann es auch nicht lösen ...
Worum geht es?
Ich baue gerade an einem Konzept zur Verbesserung der Datenverarbeitung im E-Business Bereich.
Mein Vorschlag wäre ja zur Verbesserung der Datenverarbeitung ein passendes Tool zu verwenden.
Listen sind eigentlich ein typisches Lisp-Konstrukt, das man aber in allen Modernen Programmiersprachen wie z.B. Python findet. Listen in eine Tabelle zu packen ist ein origineller Ansatz zur Verbesserung der Datenverarbeitung...
Aber mal ernsthaft:
1a-zuhause hat geschrieben: Mo, 11.01.2021 14:24
Grundproblem:
Legende: # = Zelle hat Wert / +=Leerzelle
Ist-Zustand:
Zeilen der Form
A1 B2 C1 D1 E1 F1 G1 H1 I1 ...
# # # + # + + + #
# + + + # + # # +
Sollzustand:
A1 B2 C1 D1 E1 F1 G1 H1 I1 ...
# # # # # + + + +
# # # # + + + + +
Die Zellwerte sind immer unterschiedlich!
Als direkter Ansatz bietet sich ein Makro an, das
genau macht, was Du beschreibst. Jede Zeile durcharbeiten und bei leeren Zellen Inhalte von weiter rechts kopieren.
Meine Methode der Wahl, wenn man das dauernd in der Tabellenkalkulation machen muss.
Für gelegentliche Fälle würde ich (erstmal ein Backup machen), dann die Tabelle nach csv exportieren und sicherstellen, dass mein Trennzeichen nicht IN Zellen vorkommt - meist nehme ich Tab.
In einem Editor wie Notepad++ aufeinanderfolgende Tabs durch jeweils einen einzelnen Ersetzen - geht auch mit regulären Ausdrücken im Writer.
Modifizierte csv-Datei wieder in Calc laden, dabei darauf achten, dass beim Import nichts durch die automatische Typerkennung geändert wird.
Mfg, Jörn
PS: Als Kombination meiner beiden Kommentare könte man auf die Idee kommen ein Python Makro zu schreiben, dass jede Tabellenzeile in eine Liste kopiert, dann die Originalzeile leert und die Liste dann in die Zeile zurückkopiert...
Libre Office 6.3.1 (Win 10 Pro) / Libre Office 6.0.7 (Win8.1 Pro, Win 7 Pro) / AOO (Win 7)