Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Merkwürdige Summe im Textfeld

Begonnen von T417, März 03, 2011, 13:28:11

⏪ vorheriges - nächstes ⏩

T417

Hallo zusammen,

ich habe ein berechnedes Steuerelement, der einfach nur die Summe im Endlosform berechnen soll.=Summe(Belast)
Problem dabei ist, das er mir drei Stellen hinter dem Komma anzeigt. Aber auch nur wenn ich das Textfeld direkt anklicke. ???

Ich habe 2 Stellen und Festzahl eingegeben.
Die Daten bezieht das Steuerlement aus einer Währungspalte.

Wieso berechnet mir Access also drei Stellen hinterm Komma? >:(


Gruß
T.
Arbeite normalerweise mit Access 2000/2003
In letzter Zeit häufiger mit Access 2007

Sowohl auf WinXP als auch auf Win7

bahasu

#1
.
Servus

imp666

Probier's mal mit:
=ROUND(SUMME(...),2)
Die 2 steht für 2 Nachkommastellen.

T417


Hab ich zwischendurch auch mal als Festkommazahl probiert.
Hatte keinerlei Auswirkung.
Ich habe überall zwei Nachkommastellen angegeben. Aber irgendwo ignoriert er irgendetwas.

Runden ist auch keine optimale Idee. Außerdem beschwert er sich über das ,2.
Ich hatte jetzt also einen gerundeten Beitrag ohne Nachkommastellen.
Arbeite normalerweise mit Access 2000/2003
In letzter Zeit häufiger mit Access 2007

Sowohl auf WinXP als auch auf Win7

imp666

Sorry: Unter Umständen muss es ein Semikolon ";" statt des Kommas "," sein...

bahasu

#5
.
Servus

T417

Jou. Mit Semikolon klappt es.
Bin mir allerdings nicht sicher ob das Runden eine gute Idee ist.
:-\
Arbeite normalerweise mit Access 2000/2003
In letzter Zeit häufiger mit Access 2007

Sowohl auf WinXP als auch auf Win7

imp666

Abschneiden geht auch, die Funktion heisst "FIX".
Allerdings schneidet Fix einfach nur nach dem Komma ab.

Wenn man also eine Stelle nach dem Komma benötigt dann bietet sich folgendes an:
FIX(SUMME(...)*10)/10

T417

Ich denke ich habe die Stelle endeckt, die bei mir Probleme macht.
Ich fürchte ich hab in der Tabelle die Nachkommastellen nicht klar genug definiert. Ich muss sie wohl doppelt und dreifach definieren damit Access es kapiert. >:(
Falls alle Stricke reißen schneide ich den Rest einfach ab.

Soweit Danke für die Hilfe. :)
Arbeite normalerweise mit Access 2000/2003
In letzter Zeit häufiger mit Access 2007

Sowohl auf WinXP als auch auf Win7

database

Hallo,

ZitatIch fürchte ich hab in der Tabelle die Nachkommastellen nicht klar genug definiert. Ich muss sie wohl doppelt und dreifach definieren damit Access es kapiert
Ich fürchte, dass Access da nichts falsch macht, das Ding kappiert schon richtig.
Wenn du in der Tabelle eine Festkommazahl mit 2 Kommastellen für den Felddatentyp Zahl / Double angegeben hast, dann werden z.B. 2 Stellen in der Tabelle angezeigt.
Ziehst du das Feld in eine Formular werden dort wohl kaum mehr Kommastellen erscheinen als in der Tabelle, es sei denn du hast dich mit den Formaten des Feldentwurfs herumgespielt.
Erstell ein neues Feld und lass mal die Formatierungen weg - da werden nicht mehr Kommastellen erscheinen als in der Tabelle stehen.  ;)

T417

#10
Hallo,

Jetzt hatte ich wieder etwas Zeit mich mit diesen korrupten Feld auseinander zu setzen.

Irgendwie krieg ich das nicht klar definiert. Entweder schneidet er mir beim Einfügen alle Nachkommastellen ab (und füllt mit ,00), oder aber ich bekomme drei Stellen hinter den Komma.
Was muss ich in der Tabelle definieren, damit ich ein Feld bekomme was nur zwei Stellen nach den Komma anzeigt.

Zur Erklärung:
Ich füge in die Tabelle die Daten einer anderen Tabelle ein. (mittels INSERT im VBA) Das sind gute 5000 Datensätze. Mindestens einer der Datensätze ist korrupt, das heißt er hat mehr als zwei Nachkommastellen.

@database:
Festkommazahl, 2 Kommastellen, Zahl, Double hat übrigens nicht geklappt. :-\

Gruß
T.
Arbeite normalerweise mit Access 2000/2003
In letzter Zeit häufiger mit Access 2007

Sowohl auf WinXP als auch auf Win7

DF6GL

#11
Hallo,

irgendwas wirfst Du durcheinander:

1) Darstellung am Bildschirm
2) Darstellung intern für Rechenvorgänge

eine Ganzzahl (Datentyp Integer, bzw. Long) hat keine Nachkommenstellen.

eine Festkommazahl hat eine definierte Anzahl von Nachkommstellen (Currency, Währung z. B. 4 Nachkommastellen), wobei man sich das als Ganzzahl vorstellen kann, bei der lediglich "das Komma an der richtigen Stelle" steht, (was es ja intern gar nicht gibt)



eine Gleitkommazahl (Single, Double)  hat eine zunächst nicht definierte Anzahl von von Nachkommastellen, weil intern mit Mantissen (Logarithmen)  gerechnet wird. Hier ist lediglich die insgesamte Anzahl der gültigen Stellen (Genauigkeit) interessant (Single ~ 7, Double: ~ 15 genaue Stellen insgesamt)


Die Darstellung der ANZEIGE wird durch die Formatangabe gesteuert.  Dabei kann eine Formatierung mit zwei Nachkommastellen bei einer Ganzzahl nur zu "00" führen, weil es bei diesem Zahlentyp gar keine Nachkomma-Stellenwerte gibt.


T417

Hmm,

Das Problem liegt daran, das ich die Daten der Datenbank meines Vorgängers einfügen muss. Aber davon sind nicht alle Datensätze in Ordnung.
Da die Summenbildung nur eine grobe Information ist und nicht zur Berechnung herhalten muss, schneide ich nach zwei Nachkommastellen den Rest ab. Alles andere bringt mir nichst.


Grüße
T.
Arbeite normalerweise mit Access 2000/2003
In letzter Zeit häufiger mit Access 2007

Sowohl auf WinXP als auch auf Win7

DF6GL

Hallo,


es wird (für mich) immer verwirrter...

Wenn es nur eine "grobe Info" ist, warum scherst Du Dich überhaupt darum?  Sperr das Feld , so dass es gar nicht erst den Fokus erhalten kann

Wo ist denn da ein "korruptes Feld", bzw. ein DS, der nicht in Ordnung ist?


Weiterhin schreib:

=Format(Summe(nz( [Belast];0));"0")


so dass evtl. "Null-Werte" in einen numerischen Wert gewandelt und dass keine Dezimalstellen angezeigt werden.  "[Belast]" selber darf kein berechnetes Formularfeld  sein.

T417

Hallo,

Ich dachte ich hätte die Summenfelder bereits gesperrt, aber das waren sie nicht. Autsch.


Zur Erklärung:
Wenn ich die Datensätze der anderen DB mit INSERT INTO einfüge, habe ich das Problem das einige Daten nicht korrekt sind.
Dort sind Tippfehler und ähnliches vorhanden. Datumsangaben die schon im Jahre 5000 sind, oder ein Eurobetrag mit drei Nachkommastellen.
Wenn ich jetzt eine Summe bilden will, aber der Eurobetrag hat drei Nachkommastellen, ist das kontraproduktiv.

Hab ich dir das jetzt besser erklären können?


Gruß
T.
Arbeite normalerweise mit Access 2000/2003
In letzter Zeit häufiger mit Access 2007

Sowohl auf WinXP als auch auf Win7