[Eine Seite zurück] [Übersicht] [Eine Seite vor]

Benutzung auf eigene Gefahr !
Keine Garantie für garnichts !

Relatives Runden von Gleitkommazahlen

Sprache / Programm: VBA ab Office 95
Beschreibung

Die Funktion rundet eine Zahl auf ihre ersten n Stellen. Damit unterscheidet sich die Funktion von der VBA Funktion ROUND, die nur bezogen auf das Dezimalkomma rundet.

VBA-Quelltext
Public Function RelativesRunden(Wert As Double, Stellen As Integer) As Double
    Dim Exponent As Integer, Potenz As Double
    If Wert = 0 Then
        RelativesRunden = 0
    Else
        Exponent = Log(Abs(Wert)) / Log(10)
        If Abs(Wert) < 10 ^ Exponent Then Exponent = Exponent - 1
        Potenz = 10 ^ (Exponent - Stellen + 1)
        RelativesRunden = Sgn(Wert) * Round(Abs(Wert) / Potenz, 0) * Potenz
    End If
End Function
Argumente der Funktion/Prozedur

Wert

Wert der gerundet werden soll. Hier wird der Datentyp Double angenommen.

Stellen

Anzahl der Stellen, auf die gerundet werden soll