Hallo alle zusammen,
habe ein Problem mit dem runden bzw Variable in
ganze Zahl um zuwandeln.
Dim Grad As Single
Dim Auswahl As Single
in der Variablen Grad steht z.B. die Zahl 338.123456789
diese möchte ich in die Variable Auswahl als ganze Zahl
speichern. Versucht habe ich es mit Auswahl = Int(grad)
bekomme aber dann als Ergebnis 338.0
Mit diesem Wert kann ich dann mit
Select Case Auswahl
Case 60 Print "60Grad"
Case 120 Print "120Grad"
Case 180 Print "180 Grad"
End Select
nicht weiter machen.
Hat jemand eine Idee wie man das lösen kann?
Viele Grüße Helmut
Wozu brauchst du bei Temperaturen überhaupt Floatingpoint Variablen? Du verschenkst nur Genauigkeit wegen des Speicherbedarfs des Exponenten ;-) Und ein "="-Vergleich mit Floating-Point geht meist sowieso schief, d.h. ist bis auf wenige Ausnahmen (z.B. 0.0) kaum erfolgreich, wenn du nicht sehr genau weißt, was du tust. Wie so damit Select funktionieren? Mit 16-Bit Integervariablen bist du für Temperaturen i.A. besser gerüstet. (Einheiten von 1/10°C, 1/100°C, 1/16°C, 1/256°C oder ...)
Helmut K. schrieb: > Hat jemand eine Idee wie man das lösen kann? Was möchtest du denn erreichen? Bei 60.0000°C, wenn es das als Single-Zahl überhaupt genau gibt, den Text "60 Grad" auszugeben, bei 59.9999 oder 60.0001 aber nicht, ist wohl wenig praktisch.
Schau mal in der Hilfe nach Round. var = ROUND( x ) Klaus
Hallo Dann mach doch einfach Auswahl als Word od. Integer MfG
dim Auswahl as Integer Auswahl = Grad 'das schneidet dann die Nachkommastellen ab besser: Grad = Grad + 0.5 Auswahl = Grad 'Rundet auf eine Nachkommastellee
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.