>> Tecnologia Eletrônica >  >> Casa Inteligente >> Vida Inteligente

Função Arredondar.Para.Cima no Excel e VBA

Aprender a utilizar a função "Arredondar.Para.Cima" do Excel a partir da sua linguagem de programação integrada, o VBA (Visual Basic for Applications), permite executar qualquer função do Excel a partir do VBA. Essa habilidade é útil porque o Excel possui muitas funções que o VBA não tem nativamente, e que podem ser necessárias em um programa VBA. Note que o recurso do VBA que permite acessar a função "Arredondar.Para.Cima" não alerta sobre sintaxe ou argumentos incorretos, como faria a interface padrão de planilha.

Finalidade

A função "Arredondar.Para.Cima" do Excel arredonda um número para cima, até o número de dígitos especificado. Por exemplo, executar "Arredondar.Para.Cima(2,2; 0)" diz ao Excel para arredondar o número 2,2 para o próximo inteiro. O "0" no segundo argumento indica que não se deseja casas decimais, o que equivale a solicitar uma resposta inteira.

Função Arredondar do VBA

O VBA não possui uma função "Arredondar.Para.Cima" nativa. A função mais próxima é "Arredondar", que arredonda para cima ou para baixo dependendo se o último dígito é maior ou menor que 5. Por exemplo, digitar "Arredondar(2,2; 0)" na janela "Imediato" do VBA resulta em 2, em vez do 3 que a função "Arredondar.Para.Cima" do Excel retornaria.

Propriedade "Formula"

Embora o VBA não tenha sua própria função "Arredondar.Para.Cima", ele pode utilizar a do Excel. Para isso, define-se a propriedade "Formula" do objeto virtual "Range" com a função "Arredondar.Para.Cima". O exemplo a seguir demonstra como fazer isso. Abra o ambiente de desenvolvimento do VBA pressionando "Alt" e "F11" simultaneamente no Excel. Clique na janela "Imediato" e digite: Range("A1").Formula = "=ARREDONDAR.PARA.CIMA(2,2;0)". Volte ao Excel com "Alt+F11". Verá o resultado "3" na célula A1, confirmando que a função do Excel foi aplicada com sucesso.

Exemplo Interativo

Você pode criar um programa VBA interativo que aceite do usuário os argumentos para a função "Arredondar.Para.Cima" e exiba o resultado. Após abrir o ambiente VBA, cole o seguinte código:

Public Sub arredondarNumero()
    Dim a1 As Double, a2 As Integer, s As String
    a1 = CDbl(InputBox("Digite o número que deseja arredondar"))
    a2 = CInt(InputBox("Digite o número de casas decimais para arredondar"))
    s = "=ARREDONDAR.PARA.CIMA(" & a1 & "," & a2 & ")"
    Range("A1").Formula = s
    Range("A1").Calculate
    MsgBox Range("A1").Value
End Sub

Execute o programa clicando em uma de suas instruções e depois no comando "Executar" do menu "Executar". Quando o Excel solicitar os argumentos, digite-os e pressione "Enter". O programa exibirá o resultado da função "Arredondar.Para.Cima" para os argumentos informados.