Nachkommastellen runden
Moderator: Moderatoren
-
- Beiträge: 4
- Registriert: Do, 29.05.2025 17:18
Nachkommastellen runden
Hallo,
Folgende Situation:
Ich möchte gerne meine mit OpenOffice Calc erstellte Rechnungsvorlage etwas "automatisieren". Soll heißen, es soll nach der Kommstelle gerundet werden. ABER, etwas anders als gedacht.
Gewöhnlich würde man z.B. bei 12,82 CHF auf 13,00 CHF runden. Hier soll das aber nicht sein. Hier soll als Ergebnis 12,80 CHF hinkommen. Gleiches Prinzip dann beim Aufrunden. Aus 12,86 CHF sollten dann 12,90 CHF werden. Jetzt wird sich der ein oder andere fragen, warum so umständlich. Ganz einfach erklärt. Anhand der Währung lässt sich schon erkennen, dass es hier um die Schweiz geht. In der Schweiz ist dieses auf -und abrunden normal und richtig. Denn dort gibt es nur 0 oder 5, also z.B. 12,80 CHF oder 12,85 CHF.
In meinem Fall soll also alles unter 5 abgerundet werden und ab 6 aufgerundet werden.
Leider bin ich mittlerweile mit meinem Latein am Ende. Ich habe vieles probiert, noch aus Zeiten meiner IT Ausbildung mit "=wenn" usw aber es hat nie den gewünschten Effekt erziehlt. AUch mit verschachtelten WENN Funktionen kam ich letztendlich nicht weiter.
Vielleicht kann mir ja hier jemand helfen.
Ich sage schon mal danke.
Folgende Situation:
Ich möchte gerne meine mit OpenOffice Calc erstellte Rechnungsvorlage etwas "automatisieren". Soll heißen, es soll nach der Kommstelle gerundet werden. ABER, etwas anders als gedacht.
Gewöhnlich würde man z.B. bei 12,82 CHF auf 13,00 CHF runden. Hier soll das aber nicht sein. Hier soll als Ergebnis 12,80 CHF hinkommen. Gleiches Prinzip dann beim Aufrunden. Aus 12,86 CHF sollten dann 12,90 CHF werden. Jetzt wird sich der ein oder andere fragen, warum so umständlich. Ganz einfach erklärt. Anhand der Währung lässt sich schon erkennen, dass es hier um die Schweiz geht. In der Schweiz ist dieses auf -und abrunden normal und richtig. Denn dort gibt es nur 0 oder 5, also z.B. 12,80 CHF oder 12,85 CHF.
In meinem Fall soll also alles unter 5 abgerundet werden und ab 6 aufgerundet werden.
Leider bin ich mittlerweile mit meinem Latein am Ende. Ich habe vieles probiert, noch aus Zeiten meiner IT Ausbildung mit "=wenn" usw aber es hat nie den gewünschten Effekt erziehlt. AUch mit verschachtelten WENN Funktionen kam ich letztendlich nicht weiter.
Vielleicht kann mir ja hier jemand helfen.
Ich sage schon mal danke.
- miesepeter
- ********
- Beiträge: 2238
- Registriert: Sa, 10.05.2008 15:05
- Wohnort: Bayern
Re: Nachkommastellen runden
Hallo,
du schreibst, es wird (in der Schweiz) üblicherweise bei Währung gerundet auf die zweite Stelle - hier aber nur 0 oder 5, also X,Y0 oder X,Y5.
X und Y repräsentieren ganze Zahlen.
In deiner Aufgabe aber wird auf ganze Zehner (Zehntel) gerundet, also X,Y0. Ist das Absicht, dass jetzt die Form X,Y5 nicht mehr vorkommt?
Wenn du dann mit mehreren Zahlen rechnest, wird dann mit den gerundeten Werten oder aber mit den genauen Werten weitergerechnet? Es kann dabei ja zu Unterschieden im Ergebnis kommen.
Die einfachste Form der Darstellung von Zehnern wäre jetzt aus meiner Sicht die Rundung auf die erste Stelle, z. B. mit folgender Formel:
=RUNDEN(A1;1)
und das Zahlenformat wie folgt:
0,00 oder halt bei Währung: #.##0,00 [$€-407];[ROT]-#.##0,00 [$€-407]
(CHF kannst du ja sinngemäß einfügen.)
Schwieriger würde es, wenn auch auf Fünfer gerundet würde, siehe oben.
Hier im Screenshot:
.
du schreibst, es wird (in der Schweiz) üblicherweise bei Währung gerundet auf die zweite Stelle - hier aber nur 0 oder 5, also X,Y0 oder X,Y5.
X und Y repräsentieren ganze Zahlen.
In deiner Aufgabe aber wird auf ganze Zehner (Zehntel) gerundet, also X,Y0. Ist das Absicht, dass jetzt die Form X,Y5 nicht mehr vorkommt?
Wenn du dann mit mehreren Zahlen rechnest, wird dann mit den gerundeten Werten oder aber mit den genauen Werten weitergerechnet? Es kann dabei ja zu Unterschieden im Ergebnis kommen.
Die einfachste Form der Darstellung von Zehnern wäre jetzt aus meiner Sicht die Rundung auf die erste Stelle, z. B. mit folgender Formel:
=RUNDEN(A1;1)
und das Zahlenformat wie folgt:
0,00 oder halt bei Währung: #.##0,00 [$€-407];[ROT]-#.##0,00 [$€-407]
(CHF kannst du ja sinngemäß einfügen.)
Schwieriger würde es, wenn auch auf Fünfer gerundet würde, siehe oben.
Hier im Screenshot:
.
Re: Nachkommastellen runden
Hallo
zuerst schreibst du es soll zum nächsten 5 Rappen (ge|auf|ab)-rundet werden dann wieder:
zuerst schreibst du es soll zum nächsten 5 Rappen (ge|auf|ab)-rundet werden dann wieder:
Was denn nun??In meinem Fall soll also alles unter 5 abgerundet werden und ab 6 aufgerundet werden.
Code: Alles auswählen
=VRUNDEN(A2 ; 0,05 ) #»normale« Rundungsregeln (kleiner Hälfte abrunden; ab Hälfte aufrunden)
=UNTERGRENZE(A2;0,05) # immer abrunden zum nächsten 5 Rappen-Vielfachen
=OBERGRENZE(A2;0,05) # immer aufrunden zum nächsten 5 Rappen-Vielfachen
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)
-
- Beiträge: 4
- Registriert: Do, 29.05.2025 17:18
Re: Nachkommastellen runden
Ist doch richtig was ich geschrieben habe.Karolus hat geschrieben: Do, 29.05.2025 21:46 Hallo
zuerst schreibst du es soll zum nächsten 5 Rappen (ge|auf|ab)-rundet werden dann wieder:Was denn nun??In meinem Fall soll also alles unter 5 abgerundet werden und ab 6 aufgerundet werden.
runden_auf_0,05-Vielfache.odsCode: Alles auswählen
=VRUNDEN(A2 ; 0,05 ) #»normale« Rundungsregeln (kleiner Hälfte abrunden; ab Hälfte aufrunden) =UNTERGRENZE(A2;0,05) # immer abrunden zum nächsten 5 Rappen-Vielfachen =OBERGRENZE(A2;0,05) # immer aufrunden zum nächsten 5 Rappen-Vielfachen
Nochmal: Als Beispiel: 12,82 CHF sollen auf 12,80 CHF ABgerundet werden. Das gilt auch für 12,81 CHF, 12,83 CHF und für 12,84 CHF.
12,85 CHF soll UNBERÜHRT bleiben.
12,86 CHF, 12,87 CHF, 12,88 CHF und 12,89 CHF sollen dann auf 12,90 CHF AUFgerundet werden.
Also genau das, was ich auch geschrieben habe.
-
- Beiträge: 4
- Registriert: Do, 29.05.2025 17:18
Re: Nachkommastellen runden
miesepeter hat geschrieben: Do, 29.05.2025 21:05 Hallo,
du schreibst, es wird (in der Schweiz) üblicherweise bei Währung gerundet auf die zweite Stelle - hier aber nur 0 oder 5, also X,Y0 oder X,Y5.
X und Y repräsentieren ganze Zahlen.
In deiner Aufgabe aber wird auf ganze Zehner (Zehntel) gerundet, also X,Y0. Ist das Absicht, dass jetzt die Form X,Y5 nicht mehr vorkommt?
Wenn du dann mit mehreren Zahlen rechnest, wird dann mit den gerundeten Werten oder aber mit den genauen Werten weitergerechnet? Es kann dabei ja zu Unterschieden im Ergebnis kommen.
Die einfachste Form der Darstellung von Zehnern wäre jetzt aus meiner Sicht die Rundung auf die erste Stelle, z. B. mit folgender Formel:
=RUNDEN(A1;1)
und das Zahlenformat wie folgt:
0,00 oder halt bei Währung: #.##0,00 [$€-407];[ROT]-#.##0,00 [$€-407]
(CHF kannst du ja sinngemäß einfügen.)
Schwieriger würde es, wenn auch auf Fünfer gerundet würde, siehe oben.
Hier im Screenshot:
.
WaehrungRundenZehntel.png
Ich danke dir erstmal, ich werde mir das mal anschauen, wo ich da den Denkfehler hatte. Ich vermute, deine Lösung/dein Ansatz ist richtig. Hier mal mein Ansatz. Bitte nicht lachen, ich habs halt aber erstmal versucht.
=WENN(ISTLEER(A34);WENN((G33*D35%);1>5);AUFRUNDEN((G33*D35%);1);WENN((G33*D35%);1<5);ABRUNDEN((G33*D35%);1))
EDIT
Ich hab jetzt mal deinen Vorschlag getestet. Passt leider noch nicht ganz. Die MwSt in der Schweiz sind ja 8,1%. Nimmt man jetzt z.B. 250 CHF als Rechnungsbetrag wären das dann 20,25 CHF MwSt. Diese werden jetzt aber auf 20,30 CHF aufgerundet. Das soll aber erst ab 20,26 CHF passen.
Von 20,21 CHF - 20,24 CHF soll auf 20,20 CHF abgerundet werden, die 20,25 CHF soll so bleiben und von 20,26 CHF - 20,29 CHF soll dann auf 20,30 CHF aufgerundet werden. UNd wie gesagt, da ist mein Problem.
Re: Nachkommastellen runden
Na dann,
Gruß
paljass
Code: Alles auswählen
=WENN(REST(A1*100;5)=0;A1;RUNDEN(A1;1))
paljass
Re: Nachkommastellen runden
Hallo
Oder eher:
??
Oder eher:
Code: Alles auswählen
=VRUNDEN(A2 ; WENN((REST( A2 ; 0,5 )>0,24)*(REST(A2 ; 0,5 )<0,26); 0,05 ; 0,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: Nachkommastellen runden
Oder eher nicht, weil die Rundung nur für ,25 und ,75 richtig ist. Alle anderen ,x5 werden auf den nächsten Zehner gerundet (was ja nicht sein soll!) Getestet mit LO 25.2.3.2 und OO 4.1Karolus hat geschrieben: Fr, 30.05.2025 08:14 Hallo
Oder eher:??Code: Alles auswählen
=VRUNDEN(A2 ; WENN((REST( A2 ; 0,5 )>0,24)*(REST(A2 ; 0,5 )<0,26); 0,05 ; 0,1 ))
Gruß
paljass
- miesepeter
- ********
- Beiträge: 2238
- Registriert: Sa, 10.05.2008 15:05
- Wohnort: Bayern
Re: Nachkommastellen runden
Das ist ja schon eine merkwürdige Art der Rundung. Meine folgenden Beispiele beziehen sich auf Werte von 0 bis 10 Rp. Analog höhere Anzahlen:SimbasDiener hat geschrieben: Fr, 30.05.2025 06:10Von 20,21 CHF - 20,24 CHF soll auf 20,20 CHF abgerundet werden, die 20,25 CHF soll so bleiben und von 20,26 CHF - 20,29 CHF soll dann auf 20,30 CHF aufgerundet werden.
Es würde doch mehr Sinn machen, von X,001 bis X,024 abzurunden (auf X,00), von X,025 bis X,074 auf X,05 zu runden und von X,075 aufzurunden (auf X,10). Das wäre eine Rundung auf alle Viefache von 0,05 Fr. bzw. 5 Rp. Wäre das nicht "korrekter" als dein Ansatz mit der glatten 0,05 Ausnahme?
-
- Beiträge: 4
- Registriert: Do, 29.05.2025 17:18
Re: Nachkommastellen runden
Ich habe es auch nicht wirklich kapiert, aber genau so wie ich angefragt habe, wurde es mir erklärt. Ich lebe leider nicht in der Schweiz um da konkretes zu sagen zu können, aber meine "Auftraggeberin" wohnt dort schon viele Jahre. Und sie hat es mir halt genau so erklärt.miesepeter hat geschrieben: Fr, 30.05.2025 11:47Das ist ja schon eine merkwürdige Art der Rundung. Meine folgenden Beispiele beziehen sich auf Werte von 0 bis 10 Rp. Analog höhere Anzahlen:SimbasDiener hat geschrieben: Fr, 30.05.2025 06:10Von 20,21 CHF - 20,24 CHF soll auf 20,20 CHF abgerundet werden, die 20,25 CHF soll so bleiben und von 20,26 CHF - 20,29 CHF soll dann auf 20,30 CHF aufgerundet werden.
Es würde doch mehr Sinn machen, von X,001 bis X,024 abzurunden (auf X,00), von X,025 bis X,074 auf X,05 zu runden und von X,075 aufzurunden (auf X,10). Das wäre eine Rundung auf alle Viefache von 0,05 Fr. bzw. 5 Rp. Wäre das nicht "korrekter" als dein Ansatz mit der glatten 0,05 Ausnahme?
-
- *******
- Beiträge: 1236
- Registriert: So, 14.05.2017 16:11
Re: Nachkommastellen runden
Zuletzt geändert von Mondblatt24 am Fr, 30.05.2025 12:34, insgesamt 2-mal geändert.
Win 11 (x64) ▪ LibreOffice 25.2.4.1 (x64) ▪ AOO Portable 4.1.15
Wurde die Frage zutreffend beantwortet bitte den Betreff der Eingangsfrage mit [GELÖST] ergänzen. Beschreibung
Wurde die Frage zutreffend beantwortet bitte den Betreff der Eingangsfrage mit [GELÖST] ergänzen. Beschreibung
Re: Nachkommastellen runden
Wie interpretierst du:paljass hat geschrieben: Fr, 30.05.2025 11:41Oder eher nicht, weil die Rundung nur für ,25 und ,75 richtig ist. Alle anderen ,x5 werden auf den nächsten Zehner gerundet (was ja nicht sein soll!) Getestet mit LO 25.2.3.2 und OO 4.1Karolus hat geschrieben: Fr, 30.05.2025 08:14 Hallo
Oder eher:??Code: Alles auswählen
=VRUNDEN(A2 ; WENN((REST( A2 ; 0,5 )>0,24)*(REST(A2 ; 0,5 )<0,26); 0,05 ; 0,1 ))
Bei der Formel wird alles bis zu ?,?4 abgerundet auf den nächsten Zehner , zwischen ?,?4 und ?,?6 wird zu ?,?5 gerundet und die verbleibenden aufgerundet auf den nächsten 10er.
Gruß
paljass
?SimbasDiener hat geschrieben:Von 20,21 CHF - 20,24 CHF soll auf 20,20 CHF abgerundet werden, die 20,25 CHF soll so bleiben und von 20,26 CHF - 20,29 CHF soll dann auf 20,30 CHF aufgerundet werden. UNd wie gesagt, da ist mein Problem.
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: Nachkommastellen runden
Hi,
@Karolus
Ich habe ja lediglich geschrieben, dass deine Formel bei ,05 ,15 usw nicht funktioniert (außer bei wie geschrieben ,25 und,75). Bei ,05 rundet deine Formel auf ,10 - und das soll nicht sein.
Gruß
paljass
@Karolus
Anscheinend genau wie du - beide Formeln ergeben das gleiche Ergebnis.Wie interpretierst du:
SimbasDiener hat geschrieben:
Von 20,21 CHF - 20,24 CHF soll auf 20,20 CHF abgerundet werden, die 20,25 CHF soll so bleiben und von 20,26 CHF - 20,29 CHF soll dann auf 20,30 CHF aufgerundet werden. UNd wie gesagt, da ist mein Problem.
Ich habe ja lediglich geschrieben, dass deine Formel bei ,05 ,15 usw nicht funktioniert (außer bei wie geschrieben ,25 und,75). Bei ,05 rundet deine Formel auf ,10 - und das soll nicht sein.
Gruß
paljass
EDV ist wie U-Boot fahren - machst du ein Fenster auf, fangen die Probleme an.
- redeagle56
- Beiträge: 3
- Registriert: Fr, 04.04.2025 15:04
Re: Nachkommastellen runden
Hallo,
die Formel von paljass (Gast) funktioniert doch ausgezeichnet.
Entspricht genau deinen Vorstellungen.
MfG Günter
die Formel von paljass (Gast) funktioniert doch ausgezeichnet.
Entspricht genau deinen Vorstellungen.
MfG Günter
Re: Nachkommastellen runden
Au weia da hab ich einen schweren Klops gemacht, richtig wäre natürlich:
Code: Alles auswählen
=VRUNDEN(A2;WENN((REST(A2;0,1)>0,04)*(REST(A2;0,1)<=0,059);0,05;0,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)