Função Round [VBA]

Arredonda um valor numérico para uma quantidade especificada de dígitos decimais.

warning

Esta constante, função ou objeto se ativa com a instrução Option VBASupport 1 colocada antes do código executável do programa em um módulo.


Esta função implementa a regra de arredondamento conhecida como "arredonda para par". Com esta regra, sempre que a diferença entre o número a ser arredondado e o inteiro mais próximo for exatamente igual a 0,5, o número é arredondado para o número par mais próximo. Veja os exemplos abaixo para saber mais sobre esta regra.

note

Be aware that VBA's Round function works differently than LibreOfficeDev Calc's Round function. In Calc, if the difference between the number to be rounded and the nearest integer is exactly 0.5, then the number is rounded up. Hence, in Calc the number 2.5 is rounded to 3 whereas using VBA's Round function the value 2.5 is rounded to 2 due to the "round-to-even" rule.


Sintaxe:

Round(expression [,numdecimalplaces])

Valor de retorno:

Double

Parâmetros:

expression: Expressão numérica a ser arredondada.

numdecimalplaces: Argumento opcional que especifica o número de dígitos decimais do valor arredondado resultante. O valor padrão é 0.

Códigos de erro:

5 Chamada de procedimento inválida

Exemplo:


    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
  

Os exemplos a seguir ilustram a regra "arredonda para par":


    ' Arredondar para o inteiro mais próximo (decimalplaces = 0)
    MsgBox Round(3.5) ' 4
    MsgBox Round(4.5) ' 4
    MsgBox Round(5.5) ' 6
    MsgBox Round(6.5) ' 6
    ' Arredondar com 2 dígitos decimais (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