Antworten:
TRUNC()
dient dazu, den Dezimalteil einer beliebigen Zahl sofort und ohne Änderung des Nicht-Dezimalteils zu entfernen.
So, wie pro Linyan Antwort , müssen Sie nur verwenden:
TRUNC(A1)
um den ganzzahligen Teil des Wertes in zu erhalten A1
A1-TRUNC(A1)
um den Bruchteil des Wertes in zu erhalten A1
Im Gegensatz zu FLOOR()
, TRUNC()
funktioniert sowohl positive als auch negative Zahlen ohne Anpassung zu erfordern, und funktioniert auf die gleiche Art und Weise in Microsoft Excel und Libreoffice.
FLOOR()
erfordert, dass der Signifikanzparameter das gleiche Vorzeichen wie die verarbeitete Zahl hat (oder einen Fehler auslöst), sodass der 1
am Ende geändert werden muss, -1
um negative Zahlen zu verarbeiten, oder Sie könnten SIGN()
die Formel einfügen und unnötig komplizieren.
In OpenOffice und LibreOffice gibt es FLOOR()
außerdem einen zusätzlichen (im Vergleich zu Excel) dritten "Modus" -Parameter, der die Ergebnisse ändert, die die Funktion für negative Zahlen zurückgibt.
Sie können die FLOOR
Funktion floor(A1,1)
für den ganzzahligen Teil von A1 und den A1-floor(A1,1)
dezimalen Teil von A1 ausprobieren .
Stellen Sie sich zum Beispiel vor, A1 ist 167,583:
int(A1)
würde 167 ergeben und
mod(A1,1)
würde 0,583 ergeben.
int(1.6) === 1
und int(-1.6) === -2
... trunc(decimal;0)
funktioniert aber für beide richtig.
Denken Sie nicht, dass es eine bestimmte Funktion gibt, um dies zu tun, aber indem Sie ein Paar verschachteln, können Sie.
Angenommen, Sie versuchen, den Dezimalwert für Zelle A1 zurückzugeben, lautet die Formel:
=MID(A1,SEARCH(".",A1,1)+1,LEN(A1))
Tatsächlich verwenden Sie hier die MID-Funktion, um eine bestimmte Anzahl von Zeichen ab dem Dezimalpunkt zurückzugeben. Alle 3 Verweise auf A1 müssen für jede Zelle, auf die Sie abzielen, aktualisiert werden, damit sie ordnungsgemäß funktioniert.
=RIGHT(TEXT(ABS(A1)-INT(ABS(A1));",00");2)
Wäre das nicht einfach perfekt und auch ästhetisch?