Sumário
Índice 🔎︎

# Função Round [VBA]

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

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.

Esteja ciente de que a função Round do VBA funciona de forma diferente da função Round do LibreOffice Calc. No Calc, se a diferença entre o número a ser arredondado e o inteiro mais próximo for exatamente 0,5, então o número será arredondado para cima. Portanto, no Calc, o número 2,5 é arredondado para 3, enquanto que, usando a função Round do VBA, o valor 2,5 é arredondado para 2 devido à regra "arredondar para igual".

### 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

Tópicos relacionados

Função ARRED do Calc

Funções matemáticas do VBA