Conteúdo

# Função Round [VBA]

Arredonda um valor numérico para um número especificado de algarismos decimais.

Esta constante, função ou objeto é ativado através da instrução Option VBASupport 1, colocada antes do código executável do programa num módulo.

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

Tenha em atenção que a função Round do VBA funciona de forma diferente da função Round do Calc da LibreOffice. No Calc, se a diferença entre o número a arredondar e o número inteiro mais próximo for exatamente 0,5, o número é arredondado por excesso. Assim, no Calc, o número 2,5 é arredondado para 3, enquanto que, ao utilizar a função Round do VBA, o valor 2,5 é arredondado para 2 devido à regra de «arredondamento para o par».

### Sintaxe:

Round(expression [,numdecimalplaces])

### Tipo de retorno:

Double

### Parâmetros:

expressão: A expressão numérica a arredondar.

numdecimalplaces: Argumento opcional que especifica o número de algarismos decimais no valor arredondado resultante. O valor predefinido é 0.

### Códigos de erro

5 Chamada de procedimento inválido

### 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 seguintes ilustram a regra do «arredondamento para o número par»:

        ' Arredondamento para o número inteiro mais próximo (casas decimais = 0)
        MsgBox Round(3.5) ' 4
        MsgBox Round(4.5) ' 4
        MsgBox Round(5.5) ' 6
        MsgBox Round(6.5) ' 6
        ' Arredondamento com 2 algarismos 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 ROUND do Calc

Funções matemáticas do VBA

Necessitamos da sua ajuda!