Summenbildung Access falsch

Dieses Thema Summenbildung Access falsch im Forum "Microsoft Office Suite" wurde erstellt von falke03, 6. Mai 2003.

Thema: Summenbildung Access falsch In meiner Abfrage werden Tabellenwerte nach bestimmten Kriterien sortiert. Einzelwert zu jedem Kriterium 0,55 und...

  1. In meiner Abfrage werden Tabellenwerte nach bestimmten Kriterien sortiert. Einzelwert zu jedem Kriterium 0,55 und 0,5 und 0,15. Wenn ich in der Funktion statt Gruppieren auf Summe umschalte, erscheint eine Summe von: 1,20000001788139. Das kann ich absolut nicht nachvollziehen. Woher dieser Krumme Wert? Jeder einfache Taschenrechner errechnte 1,2.
    Sicherlich kann mit Festkommaformat die Zahl auf 1,2 gebracht werden, aber woher kommt dieser krumme Wert? Rechnet Access mit dem krummen Wert ??? weiter?
     
  2. Hallo,

    ACCESS rechnet überhaupt etwas seltsam. Das kommt z.B. bei Währungsrechnungen zum Tragen, wenn man nicht etwas dagegen unternimmt.

    Ich habe folgende Routine, die ich immer dann einsetze wenn ich einen Rechenvorgang durchführe (auch bei Zwischenschritte):

    Public Function UBKRunden(Zahl, intStellen As Integer)
    On Error GoTo ERR_UBKRunden

    Dim intFact As Long
    Dim addFact As Double
    Dim intZahl As Double: intZahl = Zahl

    Select Case intStellen
    Case 0
    addFact = 0.01
    Case 1
    addFact = 0.05
    Case 2
    addFact = 0.005
    Case 3
    addFact = 0.0005
    Case 4
    addFact = 0.00005
    Case 5
    addFact = 0.000005
    Case Else
    addFact = 0.0000005
    End Select
    If Zahl < 0 Then
    addFact = addFact * -1
    End If
    intFact = intZahl * 10 ^ intStellen + addFact
    UBKRunden = Int(intFact) / 10 ^ intStellen
    Exit Function

    ERR_UBKRunden:

    MsgT2 = Runden-Funktion

    Msg = Err.Description & vbCrLf & vbCrLf
    Msg = Msg & cst_FehNr & Err & cst_FehZl & Erl
    MsgBox (Msg), vbOKOnly, MsgT1 & cst_ER3 & MsgT2

    Resume Next
    Exit Function

    End Function

    Es wurden zwar schon andere Routinen in Fachkreisen gehandelt, diese aber hat mich bisher noch nicht im Stich gelassen und gibt sowohl bei positiven wie bei negative Zahlen mit Nachkommastellen immer das richtige Ergebnis.

    Dabei ist Zahl das Argument, das ich übergebe für das Ergebnis einer Rechenoperation und intStellen die Anzahl der Nachkommastellen. Das Errorhandling etnspricht meinen Standardkonventionen und muß natürlich angepaßt werden.

    Noch Fragen? Dann Bitte!

    Gruß
    Kurt Körner
     
  3. Hallo Kurt.
    Vielen Dank für den Hinweis, aber wie binde ich so eine Public Funktion in eine Abfrage ein???
    mfg
    Dirk
     
  4. Hallo Falke03,

    also in einer Abfrage kannst Du das nicht einsetzen, jedoch wird die Abfrage ja irgendwo zu einer Ausgabe; entweder in einem Bericht oder einem Formular. Dort kann man dann diese Funktion über ein passendes Ereignis einbinden (z.B. beim Öffnen).

    Im übrigen ist dieser Fehler darauf zurückzuführen, daß ACCESS mit mindestens 4 Nachkommastellen (beim Währungsformat) arbeitet und keine korrekte Rundungsfunktion enthält. In EXCEL muß man ja auch wenn man was ausrechnet sehr auf's Runden achten. Doch dort gibt es den Befehl Runden.

    Ich hoffe das hilft, ansonsten mußt Du schon mal Deine Problemstellung und Deine Lösung genauer schildern.

    Gruß
    Kurt Körner
     
Die Seite wird geladen...

Summenbildung Access falsch - Ähnliche Themen

Forum Datum
MS Word - "Summenbildung in Tabellen" Windows XP Forum 25. Aug. 2007
Excel Summenbildung funktioniert nicht Microsoft Office Suite 15. März 2005
W8.1 INACCESSIBLE_BOOT_DEVICE nach USB-Problem Windows 8 Forum 7. Mai 2015
Access 2010 lfd. Konfiguration-Setup Windows 7 Forum 7. Dez. 2014
Probleme mit Access Runtime und einem Programm Windows 7 Forum 24. Mai 2014