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


Am 21.03.2017 um 18:17 schrieb Ernst May-Jung:

Ich habe die problematische Spalte aus der Originaltabelle kopiert und 
in eine neue Tabelle eingefügt:
https://drive.google.com/open?id=0B9JW9rdtKs2oeEdlcTdCZzZ3TTA

*   Da ist eine Spalte mit Zahlen. Am Ende wird die Spalte summiert.
*   Die Summe ist jedoch unvollständig. Es werden Zahlen ausgelassen. 
Diese Zahlen habe ich rot markiert.

Diese vermeintlichen Zahlen sind in Wirklichkeit keine Zahlen, sondern
Text (der halt zufälligerweise aus Ziffern besteht). Und u. a. die
Funktion SUMME ignoriert Text.

*   In einer Addition werden die Zahlen jedoch korrekt behandelt.

Im Gegensatz zur Funktion SUMME versucht Calc bei einer *direkten*
Rechenoperation mit einer Zelle, diese in eine Zahl um zu konvertieren.

Übrigens werden Texte auch bei Vergleichen nicht konvertiert. Ein
"=A1=B1" ergibt 'falsch', wenn in A1 der Text "1" steht, und in B1 die
Zahl 1. Integriert man /vor/ dem Vergleich jedoch eine Rechenoperation,
indem man "=(A1+0)=(B1+0)" schreibt, ist das Ergebnis dagegen 'wahr'.

Die Ursache, dass die rot markierten Zahlen nicht mitgerechnet werden, 
habe ich nach entzippen der .ods in der 'content.xml' gefunden.
Die betroffenen Zahlen sind vom Typ 'string' statt 'float'.

Genau.

- Bei der Addition findet eine Typkonvertierung statt, bei SUM() nicht.

Jepp; aber eben nur bei direkten Rechenoperationen mit einer Zelle.

- Der Typ 'string' ist nicht unmittelbar erkennbar. Es ist möglich das 
Feld so zu formatieren, dass kein Hochkomma angezeigt wird, das zeigt 
das Feld vom Typ 'string' ist.

Ja; es obliegt tem Benutzer, darauf zu achten. Du kannst z. B. eine
weitere Spalte oder Bedingte Formatierung benutzen, und das mit der
Bedingung 'ISTZAHL(<zelle>)=falsch' zu überprüfen und anzeigen zu lassen.

Durch Löschen der direkten Formatierung, kam das Hochkomma wieder zum 
Vorschein, ich konnte es entfernen und die Summe wurde wieder korrekt 
berechnet.

Du kannst auch einfach den betreffenden Bereich oder auch die ganze
Spalte (leider immer nur eine) markieren, und über 'Daten => Text in
Spalten' eventuelle Texte in Zahlen umwandeln lassen. Wenn Du in dem
Dialogfenser unten eine oder mehrere der Spalten markierst, kannst Du
ggf. auch diverse Datumsformate angeben, und sogar umgekehrt auch
Zahlen in Text verwandeln.

Wolfgang
-- 

-- 
Liste abmelden mit E-Mail an: users+unsubscribe@de.libreoffice.org
Probleme? http://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert

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.