Date: prev next · Thread: first prev next last
2025 Archives by date, by thread · List index


Vielen Dank IB,

so viele Varianten habe ich gar nicht getestet. Ich kann also mit deiner Unterstützung bei einem Bugreport rechnen?

Mit freundlichen Grüßen

Jürgen Kirsten




Am 12.04.2025 um 08:27 schrieb Rest@MB-MC.ch:
Guten Morgen,

es mag das Konzept vom LOcalc-csv-Import sein, der jedoch – nicht nur in diesem Bereich – fehlerhaft umgesetzt ist.
Ich habe folgendes getestet:
1. csv-Datei mit anfangs x leeren Zeilen und nachfolgend y, mit Zahlen gefüllte, Zeilen erstellt 2. In eine leere ods-Datei die csv-Datei ab Zeile 1 eingelesen und in einer weiteren Spalte Zellbezüge auf die erste erstellt. 3. Veränderungen an der csv-Datei (immer in der ursprünglichen Datei; veränderte Datei jeweils abgespeichert und die Verknüpfung in Calc aktualisiert)
3.1 Von unten Zeilen gelöscht
    ⇒ Bezugsfehler in den unteren Zeilen der ods-Datei
3.2 Von oben (oder irgendwo) Zeilen gelöscht
    ⇒ Bezugsfehler in den unteren Zeilen der ods-Datei
3.3 Von oben (oder irgendwo) Zeilen gelöscht und unten entsprechend Leerzeilen eingefügt
    ⇒ Bezugsfehler in den unteren Zeilen der ods-Datei
3.4 Oben (oder irgendwo in der Mitte) Leerzeilen eingefügt
    ⇒ kein Bezugsfehler in der ods-Datei; 1. Spalte nur entsprechend länger 3.5 Von oben (oder irgendwo) Zeilen gelöscht, unten entsprechend Leerzeilen eingefügt und (!) zusätzlich eine Zeile mit Inhalt angehängt     ⇒ kein Bezugsfehler in der ods-Datei; 1. Spalte nur um die eine Zeile länger

Daraus folgt, dass die Importroutine von Calc Leerzeilen am Ende der csv-Datei nicht übernimmt, Leerzeilen am Anfang der csv-Datei hingegen schon. Die ist konzeptionell inkonsequent und somit meiner Meinung ein Fehler.

Gruß IB
--------------------------------------------
Am 12.04.25 um 01:13 schrieb Jürgen Kirsten:


Hallo zusammen,


ich hoffe, ihr könnt mir
       weiterhelfen. Ich bin auf ein Verhalten in Calc gestoßen, das ich
       als fehlerhaft empfinde – bin mir aber nicht sicher, ob es so
       gewollt ist. Daher wende ich mich an euch als Experten.


Mir ist das Ganze
       aufgefallen, als ich mir ein kleines Auswertetool gebaut habe, das
       regelmäßig CSV-Daten aus meinem Home Assistant verarbeitet. (Die
       Herkunft der CSV-Datei ist aber für das Problem nicht
       entscheidend.)Das Problem tritt auf, wenn sich die Anzahl der Zeilen in der
       CSV-Datei im Vergleich zum Zeitpunkt der Verknüpfung ändert – was
       bei mir häufig vorkommt. In der Folge "verschieben" sich
       Formelbezüge, was zu Fehlern führt.
So lässt sich das
       Verhalten leicht reproduzieren:


*
Eine neue Tabelle
           in Calc erstellen, in Spalte A z. B. die Zeilen 1–20 mit Daten
           füllen.


*
Diese Tabelle als
           CSV-Datei abspeichern und schließen.


*
Neue leere Datei
           in Calc öffnen (die spätere „Auswertedatei“).


*
In Zelle A1 gehen
           → MenüTabelle →
             Externe Verknüpfungen...→ die zuvor gespeicherte
           CSV-Datei auswählen.


*
Im
           Textimport-Dialog einfach mit OK bestätigen.


*
Nun stehen die
           CSV-Daten in A1:A20.


*
In B1 die Formel=A1schreiben und
           diese bis B40 herunterziehen.


*
Die Datei normal
           im.ods-Format
           abspeichern.


*
Jetzt die
           CSV-Datei erneut öffnen, z. B. 5 Zeilen löschen, speichern und
           schließen.


*
Die Auswertedatei
           erneut öffnen – je nach Einstellung wird man gefragt, ob die
           Verknüpfung aktualisiert werden soll (ansonsten passiert es
           automatisch).
Ergebnis:


*
Nach dem
           Aktualisieren sehen die Zellen B1:B15 korrekt aus.


*
Die Zellen B16–B20
           zeigen nun#BEZUG!.


*
Die Formel in B21
           zeigt nun aufA16stattA21.


*
In B40 steht=A35statt=A40.


Wenn man die CSV-Datei
       anschließend wieder auf z. B. 25 Zeilen verlängert, verschwinden
       die#BEZUG!-Fehler,
       aber die Bezüge sind erneut verschoben – z. B. zeigt B21 jetzt aufA26.


Auch wenn man die
       Formeln in Spalte B in ein separates Arbeitsblatt auslagert und
       dort auf Spalte A referenziert, tritt der Fehler auf.


Es sieht so aus, als
       ob Calc beim Aktualisieren Zellen „nach oben verschiebt“ (wenn
       Daten entfernt wurden) bzw. „nach unten verschiebt“ (wenn neue
       Daten dazukommen) – ähnlich dem manuellen BefehlZellen löschen → nach oben
         verschieben.
Meine Frage:


Handelt es sich
       hierbei um ein gewolltes Verhalten?


Aus meiner Sicht
       sollte Calc einfach nur die vorhandenen Datenzeilen überschreiben
       – also:


*
Weniger Daten:Die Zellen sollten geleert werden, ohne die Struktur zu
           verändern.


*
Mehr Daten:Die
           neuen Daten sollten hinzugefügt oder über bestehende Inhalte
           geschrieben werden, ohne Formelbezüge zu verschieben.


Ich würde mich freuen,
       wenn jemand dieses Verhalten bestätigen oder mir erklären kann, ob        es Vorteile dieser Vorgehensweise gibt, die ich übersehen habe.Unterstützt jemand eventuell meinen Wunsch, das Verhalten beim
       Aktualisieren von extern verknüpften CSV-Dateien anpassbarer oder
       stabiler zu gestalten?


Vielen Dank und viele
       Grüße




Jürgen Kirsten








--
Liste abmelden mit E-Mail an: users+unsubscribe@de.libreoffice.org
Probleme? https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.