Функция Round [VBA]

Закръглява числова стойност до зададен брой знаци след десетичната запетая.

warning

Тази константа, функция или обект се разрешава с оператора Option VBASupport 1, поставен преди изпълнимия програмен код в модула.


Тази функция следва правилото за закръгляване, известно като „закръгляване до четно“. То гласи, че когато разликата между закръгляваното число и най-близкото цяло число е равна на 0,5, числото се закръглява до най-близкото четно число. За да научите повече, вижте примерите по-долу.

note

Имайте предвид, че функцията Round на VBA се различава от функцията Round на LibreOffice Calc. В Calc, ако разликата между закръгляваното число и най-близкото цяло число е точно 0,5, числото се закръглява нагоре. Така в Calc числото 2,5 се закръглява на 3, а с функцията Round на VBA стойността 2,5 се закръглява на 2 заради правилото „закръгляване до четно“.


Синтаксис:

Round(expression [,numdecimalplaces])

Резултат:

Double

Параметри:

expression: числовият израз, който да бъде закръглен.

numdecimalplaces: незадължителен аргумент, който указва броя знаци след десетичната запетая в закръглената стойност. Подразбираната стойност е 0.

Кодове за грешка:

5 Невалидно извикване на процедура

Пример:


    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
  

Следващите примери илюстрират правилото „закръгляване до четно“:


    ' Закръгляване към най-близкото цяло число (decimalplaces = 0)
    MsgBox Round(3.5) ' 4
    MsgBox Round(4.5) ' 4
    MsgBox Round(5.5) ' 6
    MsgBox Round(6.5) ' 6
    ' Закръгляване с два знака след десетичната запетая (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
  

Моля, подкрепете ни!