Funkce Round [VBA]

Zaokrouhlí číselnou hodnotu na daný počet desetinných míst.

warning

Tato konstanta, funkce nebo objekt se povoluje příkazem Option VBASupport 1, který je umístěn v modulu před spustitelným programem.


Tato funkce implementuje pravidlo zaokrouhlování známé jako „zaokrouhlování na sudou“. Podle něj se tehdy, když je rozdíl mezi zaokrouhlovaným číslem a nejbližším celým číslem roven 0,5, číslo se zaokrouhlí na nejbližší sudé číslo. Příklady s tímto pravidlem následují níže.

note

Mějte na paměti, že se funkce VBA Round odlišuje od funkce Round z aplikace LibreOffice Calc. Jestliže je v Calcu rozdíl mezi zaokrouhlovaným číslem a nejbližším celým číslem přesně 0,5, číslo se zaokrouhlí nahoru. Například číslo 2,5 se tak zaokrouhlí na 3, zatímco funkce VBA Round zaokrouhlí hodnotu 2,5 na 2 podle pravidla „zaokrouhlování na sudou“.


Syntaxe:

Round(expression [,numdecimalplaces])

Návratová hodnota:

Double

Parametry:

expression: Číselný výraz, který se má zaokrouhlit.

numdecimalplaces: Nepovinný argument, který určuje, na kolik desetinných míst se má číslo zaokrouhlit. Výchozí hodnota je 0.

Chybové kódy:

5 Neplatné volání procedury

Příklad:


    Option VBASupport 1
    Sub Example_Round
        Dim r 
        r = Pi
        print r ' 3,14159265358979
        print Round(r, 5) ' 3,14159
        r = exp(1)
        print r ' 2,71828182845904
        print Round(r) ' 3
    End Sub
  

Následující příklady ilustrují pravidlo „zaokrouhlování na sudou“:


    ' Zaokrouhlování na nejbližší celé číslo (decimalplaces = 0)
    MsgBox Round(3.5) ' 4
    MsgBox Round(4.5) ' 4
    MsgBox Round(5.5) ' 6
    MsgBox Round(6.5) ' 6
    ' Zaokrouhlování na 2 desetinná místa (decimalplaces = 2)
    MsgBox Round(1.555, 2) ' 1.56
    MsgBox Round(1.565, 2) ' 1.56
    MsgBox Round(1.575, 2) ' 1.58
    MsgBox Round(1.585, 2) ' 1.58
  

Podpořte nás!