Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: Lalikowski am März 15, 2025, 17:05:59

Titel: Aktualisierungsabfrage rundet nicht das Ergebnis
Beitrag von: Lalikowski am März 15, 2025, 17:05:59
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                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
Titel: Re: Aktualisierungsabfrage rundet nicht das Ergebnis
Beitrag von: Bitsqueezer am März 15, 2025, 17:42:20
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
Titel: Re: Aktualisierungsabfrage rundet nicht das Ergebnis
Beitrag von: Josef P. am März 15, 2025, 21:01:40
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
Titel: Re: Aktualisierungsabfrage rundet nicht das Ergebnis
Beitrag von: Knobbi38 am März 16, 2025, 12:06:51
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
Titel: Re: Aktualisierungsabfrage rundet nicht das Ergebnis
Beitrag von: Lalikowski am März 17, 2025, 11:12:51
...vielen Dank