Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Aktualisierungsabfrage rundet nicht das Ergebnis

Begonnen von Lalikowski, März 15, 2025, 17:05:59

⏪ vorheriges - nächstes ⏩

Lalikowski

Hallo,

ich habe eine Aktualisierungsabfrage, in der ein Ergebnis kfm. gerundet werden soll.
Macht sie aber nicht, die Abfrage rechnet, ohne zu runden.....

Was kann ich tun?, DB im Anhang.

Vielen Dank

Andreas                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         

Bitsqueezer

Hallo,

"Int" schneidet nur die Nachkommastellen ab.
Kaufmännisches Runden geht mit Round mit Angabe der gewünschten Zahl Nachkommastellen.
https://learn.microsoft.com/de-de/office/vba/language/reference/user-interface-help/round-function

Gruß

Christian

Josef P.

Hallo!

Kurze Anmerkung:
Ich behaupte einmal: bei diesem Artikel ist "bankers rounding" zu "kaumännisches Runden" geworden.
VBA.Round rundet symmetrisch nicht kaufmännisch.

Gruß
Josef

Knobbi38

#3
Zitat von: Bitsqueezer am März 15, 2025, 17:42:20Kaufmännisches Runden geht mit Round mit Angabe der gewünschten Zahl Nachkommastellen.
https://learn.microsoft.com/de-de/office/vba/language/reference/user-interface-help/round-function
Achtung: das ist ein Übersetzungsfehler!

"Bankers Rounding" entspricht nicht dem kaufmännischen Runden nach DIN.

Hier eine kleine Ersatzfunktion:
Function fctRound(varNr As Variant, Optional varPl As Integer = 2) As Double
 'by Konrad Marfurt + ("" by) Luke Chung + Karl Donaubauer

    'raus hier bei nicht-nummerischem Argument
    If Not IsNumeric(varNr) Then Exit Function

    fctRound = Fix("" & varNr * (10 ^ varPl) + Sgn(varNr) * 0.5) / (10 ^ varPl)
End Function
Man beachte jedoch auch den Unterschied zwischen mathematischem und dem kaufmännischem Runden:
https://www.buchhaltung-einfach-sicher.de/bwl/kaufmaennisches-runden

Gruß Knobbi38

Lalikowski