Hallo,
ich versuche eine beliebige unformatierte Texttabelle mit Hilfe von Calc zu formatieren. Es kommt dabei nicht besonders auf Schönheit an. Mein Ziel liegt darin schnell und einfach Stückzahlen und Bezeichnungen zu erfassen und zu berechnen. Da die Ausgangstabelle immer in Textform in jedweder möglichen Formatierung vorliegt ist das nicht ganz einfach.
Meine Formel verwendet daher z. B. zur Erfassung der Stückzahl eine Unterscheidung nach typ(). Das Argument ist jedoch auch eine mit indirekt() zusammengesetzte Formel. Die funktioniert auch sehr gut, so lange die betreffende Zelle einen Inhalt (Text oder Zahl) hat. Sobald eine Leerzelle angetroffen wird der Fehler Err.502 ausgegeben.
Bei der Nachverfolgung des Problems lässt sich die Zelle mit der zusammengesetzten Formel =INDIREKT(VERKETTEN("A";$I$4+(ZEILE()-4)*2)) ganz normal auslesen.
Will man jetzt den Typ feststellen: =TYP(INDIREKT(VERKETTEN("A";$I$4+(ZEILE()-4)*2))) so wird der Fehler Err.502 ausgegeben.
Jetzt wird es erst richtig interessant, ruft man die gleiche Zelle mit direkt eingesetztem Argument z. B. =TYP(A42) auf so wird als Ergebnis "1" also Zahl ausgegeben. ... Und oh Wunder die Zellen, die vorher einen Fehler anzeigten geben nun auch das erwartete Ergebnis aus.
Zum besseren Verständnis habe ich eine Beispieldatei angehängt. - Meine Frage nun, ist das ein echter Bug oder kann ich das irgendwie umgehen? Am Ende der einfach formatierten Ergebnistabelle möchte ich nach Möglichkeit nur leere Felder haben und nicht diese Fehlermeldungen um auch weiter mit den Zahlen rechnen zu können.
Ist dieser Fehler ggf. in der neuen Version schon behoben?
Vielen Dank!
doit1910
oo 3.3.0 Calc, Funktion typ() gibt bei Leerzellen Err.502
Moderator: Moderatoren
oo 3.3.0 Calc, Funktion typ() gibt bei Leerzellen Err.502
- Dateianhänge
-
- TXT-Tabelle_formatieren.ods
- (11.82 KiB) 36-mal heruntergeladen
Re: oo 3.3.0 Calc, Funktion typ() gibt bei Leerzellen Err.50
Hallo
Ich würde folgendes machen:
Ich würde folgendes machen:
- 1) alle x in Spalte A löschen (→Bearbeiten→suchen und ersetzen...)
2) in Spalte H per Formel alles von Spalte B bis G verketten
3) Spalte H kopieren und an gleicher Stelle →Inhalte einfügen ohne [ ]alles und ohne [ ]Formeln
4) Spalte B bis G löschen
5) Die Leeren Zeilen per →Daten→Filter... rausflitern.
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
Re: oo 3.3.0 Calc, Funktion typ() gibt bei Leerzellen Err.50
Krampf !WiM hat geschrieben:ich habe folgende Formel in J4 geschrieben und bis J44 'heruntergezogen':Es wurden keine Fehlermeldungen ausgegeben, jedoch kommt eine Fehlermeldung, wenn Du in Spalte ACode: Alles auswählen
WENN(ISTLEER(INDIREKT(VERKETTEN("a";$I$4+(ZEILE()-4)*2)));""; WERT(LINKS(INDIREKT(VERKETTEN("a";$I$4+(ZEILE()-4)*2)) ; LÄNGE(INDIREKT(VERKETTEN("a";$I$4+(ZEILE()-4)*2)))-1)))
nur eine Zahl eingibst. Sollte dies vorkommen, dann mußt Du dies noch in der Formel irgendwie abfangen.
Gruß Wim
Code: Alles auswählen
=N(WECHSELN(VERSCHIEBUNG($A$1;ZEILE(A1)*2+5;0);"x";"")*1)
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
Re: oo 3.3.0 Calc, Funktion typ() gibt bei Leerzellen Err.50
Hallo nochmal,
die Lösung ist gefunden:
Kann Zeichenketten, Zahlen und Leerzellen verarbeiten.
Die Funktion verschiebung() ist ganz interessant, da ich die Verschiebung bereits berücksichtigt hatte habe ich sie nicht verwendet.
Besonders interessant finde ich die Wirkung des letzten "*1" in Zusammenhang mit N(). Ohne den Vorschlag von Karolus hätte ich das nicht gefunden!
Das seltsame Verhalten von typ() ist damit zwar nicht geklärt bleibt aber wohl z. Zt. weiter im dunkeln.
Nochmals vielen Dank!
Gruß
doit1910
die Lösung ist gefunden:
Code: Alles auswählen
=N(WECHSELN(INDIREKT(VERKETTEN("A";$I$4+(ZEILE()-4)*I$6));I$8;" ")*1)
Die Funktion verschiebung() ist ganz interessant, da ich die Verschiebung bereits berücksichtigt hatte habe ich sie nicht verwendet.
Besonders interessant finde ich die Wirkung des letzten "*1" in Zusammenhang mit N(). Ohne den Vorschlag von Karolus hätte ich das nicht gefunden!
Das seltsame Verhalten von typ() ist damit zwar nicht geklärt bleibt aber wohl z. Zt. weiter im dunkeln.
Nochmals vielen Dank!
Gruß
doit1910