Redondear en VBA

Iqra Hasnain 12 julio 2022
Redondear en VBA

Usaremos ejemplos para presentar las funciones Round() y RoundUp() en VBA.

Utilice las funciones Round() o RoundUp() en VBA

Al trabajar con hojas de Excel que contienen números y cálculos, obtenemos resultados en fracciones. A veces tenemos que convertir estos números decimales en números enteros.

VBA proporciona tres funciones diferentes que se pueden usar para convertir números decimales en números enteros. Discutiremos dos funciones en este artículo.

El Round() redondea el número decimal al número entero más próximo. Por ejemplo, almacenaremos un número decimal y luego usaremos la función Round().

Código de ejemplo:

# VBA
Sub roundFunc()
Dim num As Double
num = 5.79
MsgBox Round(num)
End Sub

Producción:

función round en VBA

Incluso podemos mencionar el número de lugares decimales hasta que queramos redondear el número decimal. Intentemos redondear el mismo número hasta un decimal.

Código de ejemplo:

# VBA
Sub roundFunc()
Dim num As Double
num = 5.79
MsgBox Round(num, 1)
End Sub

Producción:

función de redondeo hasta un punto decimal en VBA

Del resultado anterior, podemos redondear fácilmente el número decimal hasta 1 decimal. También podemos usar esta función para redondear el valor de la celda en la hoja de Excel.

Intentemos redondear el número en la hoja de Excel usando el método de rango.

Código de ejemplo:

# VBA
Sub roundFunc()
Range("A1").Value = Round(Range("A1").Value, 1)
End Sub

Producción:

redondeando un número de la hoja de Excel en VBA

Analicemos otra función que puede redondear el número decimal incluso si el número está cerca del número entero más pequeño. Puede haber muchas situaciones en las que siempre debamos redondear el número decimal al número entero mayor que el número decimal.

Sintaxis:

# VBA
Application.WorksheetFunction.RoundUp(num, 1)

Pongamos un ejemplo e intentemos usar la función RoundUp().

Código de ejemplo:

# VBA
Sub roundFunc()
Dim num As Double
num = 5.468
MsgBox Application.WorksheetFunction.RoundUp(num, 1)
End Sub

Producción:

función de redondeo en VBA

De esta forma, podemos redondear los números al mayor número entero posible utilizando la función RoundUp().