Hi, hoffe ich bin in der richtigen Rubrik.
Ich habe ein Problem bei der Berechnung von Zahlen mit Access97.
Ein Beispiel:
2,4 * 0,563 ergibt 1,3512
Mich interresiert aber nur die Zahl bis zur 3. Stelle. Also 1,351.
In diesem Fall währe es nicht so tragisch da Access in diesem
Fall ja abrundet. Bei 1,3519 sieht die Sache aber anders aus.
Dort würde dann 1,352 stehen. Was aber nicht gewollt ist.
Das Tabellenfeld bzw. das Formularfeld ist mit einer
Festkommazahl und 3 Stellen eingestellt.
Hat jemand eine Idee ?
Gruß
Juppy
Seite 1 von 1
Berechnungen Unter Access97
Anzeige
#2
geschrieben 22. Januar 2004 - 14:09
Weil Access nicht rundet, sondern einfahc nur Ziffern ausblendet? Für's Runden nimmt man normalerweise ein Makro.
Konnichiwa. Manga wo shitte masu ka? Iie? Gomenne, sonoyouna koto ga tabitabi arimasu. Mangaka ojousan nihongo doujinshi desu wa 'Clamp X', 'Ayashi no Ceres', 'Card Captor Sakura', 'Tsubasa', 'Chobits', 'Sakura Taisen', 'Inuyasha' wo 'Ah! Megamisama'. Hai, mangaka gozaimashita desu ni yuujin yori.
Ja, mata ne!
(For sending email please use OpenPGP encryption and signing. KeyID: 0xA0E28D18)
Ja, mata ne!
(For sending email please use OpenPGP encryption and signing. KeyID: 0xA0E28D18)
#3
geschrieben 22. Januar 2004 - 14:14
Zitat (Rika: 22.01.2004, 14:09)
Weil Access nicht rundet, sondern einfahc nur Ziffern ausblendet? Für's Runden nimmt man normalerweise ein Makro.
Habe ein ähnliches Problem. Kannst Du das vielleicht näher beschreiben? Welches Makro könnte ich nehmen?
#4
geschrieben 22. Januar 2004 - 14:42
Hi Rika,
erstmal danke für schnelle Antwort.
Doch mein Problem hat sich erledigt. Ich habe mal ein bischen im
INet gestöbert und bei www.vbarchiv.net unter dem Artikel:
"Runden und DM/Euro-Umrechnung" etwas gefunden.
Ich habs ein ganz kleines bischen verändert, denn das eigentlich runden
brauche ich ja nicht. Hier mal der Code
Public Function Runden(ByVal Wert As Double, ByVal Anzahl As Byte) As Double
' Wert = Wert der gerundet werden soll
' Anzahl = Anzahl der Nachkommastellen
zwWert1 = Fix(Wert * 10 ^ (Anzahl + 1))
Stelle = Right(zwWert1, 1)
zwWert2 = Fix(Wert * 10 ^ Anzahl)
If Stelle < 5 Then
Runden = zwWert2 / (10 ^ Anzahl)
Else
If zwWert2 > 0 Then
Runden = (zwWert2) / (10 ^ Anzahl)
Else
Runden = (zwWert2) / (10 ^ Anzahl)
End If
End If
End Function
Das sollte es gewesen sein.
Trotzdem Danke
Gruß
Juppy
erstmal danke für schnelle Antwort.
Doch mein Problem hat sich erledigt. Ich habe mal ein bischen im
INet gestöbert und bei www.vbarchiv.net unter dem Artikel:
"Runden und DM/Euro-Umrechnung" etwas gefunden.
Ich habs ein ganz kleines bischen verändert, denn das eigentlich runden
brauche ich ja nicht. Hier mal der Code
Public Function Runden(ByVal Wert As Double, ByVal Anzahl As Byte) As Double
' Wert = Wert der gerundet werden soll
' Anzahl = Anzahl der Nachkommastellen
zwWert1 = Fix(Wert * 10 ^ (Anzahl + 1))
Stelle = Right(zwWert1, 1)
zwWert2 = Fix(Wert * 10 ^ Anzahl)
If Stelle < 5 Then
Runden = zwWert2 / (10 ^ Anzahl)
Else
If zwWert2 > 0 Then
Runden = (zwWert2) / (10 ^ Anzahl)
Else
Runden = (zwWert2) / (10 ^ Anzahl)
End If
End If
End Function
Das sollte es gewesen sein.
Trotzdem Danke
Gruß
Juppy
#5
geschrieben 23. Februar 2004 - 20:38
Hi
vergesst den Code. Hat leider net so
funktioniert wie ich es gedacht habe.
Gruß
Juppy
vergesst den Code. Hat leider net so
funktioniert wie ich es gedacht habe.
Gruß
Juppy
Thema verteilen:
Seite 1 von 1