Funkcja Round [VBA]

Zaokrągla wartość liczbową do określonej liczby cyfr dziesiętnych.

warning

Ta stała, funkcja lub obiekt włączane są przez instrukcję Option VBASupport 1 umieszczoną w module przed programem wykonywalnym.


Ta funkcja implementuje regułę zaokrąglania znaną jako „od zaokrąglenia do parzystości”. Zgodnie z tą zasadą, ilekroć różnica między liczbą do zaokrąglenia a jej najbliższą liczbą całkowitą jest równa 0,5, liczba jest zaokrąglana do najbliższej liczby parzystej. Zobacz przykłady poniżej, aby dowiedzieć się więcej o tej regule.

note

Należy pamiętać, że funkcja Round języka VBA działa inaczej niż funkcja Round programu LibreOffice Calc. W programie Calc, jeśli różnica między liczbą do zaokrąglenia a najbliższą liczbą całkowitą wynosi dokładnie 0,5, liczba jest zaokrąglana w górę. Dlatego w programie Calc liczba 2,5 jest zaokrąglana do 3, podczas gdy przy użyciu funkcji VBA Round wartość 2,5 jest zaokrąglana do 2 ze względu na zasadę „zaokrąglania do parzystości”.


Składnia:

Round(expression [,numdecimalplaces])

Zwracana wartość:

Double

Parametry:

expression: Wyrażenie numeryczne do zaokrąglenia.

numdecimalplaces: Opcjonalny argument określający liczbę cyfr dziesiętnych w wynikowej zaokrąglonej wartości. Wartość domyślna to 0.

Kody błędów:

5 Nieprawidłowe wywołanie procedury

Przykład:


    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
  

Poniższe przykłady ilustrują zasadę „zaokrąglenia do parzystej”:


    ' Zaokrąglanie do najbliższej liczby całkowitej (miejsca po przecinku = 0)
    MsgBox Round(3.5) ' 4
    MsgBox Round(4.5) ' 4
    MsgBox Round(5.5) ' 6
    MsgBox Round(6.5) ' 6
    ' Zaokrąglanie do 2 miejsc po przecinku (miejsca po przecinku = 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
  

Prosimy o wsparcie!