Función de redondeo de VBA

En Excel, tenemos la función de redondeo que se utiliza para redondear los números hasta los decimales que elijamos. Supongamos que hay un número que es algo así como 8.5036 y queremos redondearlo a dos números. En realidad, hay dos métodos para hacer en Excel, uno es el botón redondo que tenemos en Excel como se muestra en la captura de pantalla a continuación y otro es la función redonda. La captura de pantalla para el botón redondo es la siguiente.

Como se explicó anteriormente, podemos redondear números en Excel con la opción de aumentar y disminuir la función decimal o redonda. Del mismo modo, en VBA también tenemos redondear la función que se utiliza para redondear los números a decimales específicos. Anteriormente, la función redonda en Excel estaba usando los siguientes argumentos.

En Excel : Redondo (Número, Número de dígitos después del decimal)

El número es el número que queremos redondear, mientras que el número de dígitos es la cantidad de dígitos que queremos redondear. Del mismo modo, el resumen de VBA de Excel es el mismo que la función de ronda de Excel. Echa un vistazo a continuación.

En VBA : Round (Número, (Número de dígitos después del decimal))

Lo anterior es la función redonda en VBA, pero la función de resumen es algo diferente. Sin embargo, la sintaxis para la función redonda en VBA y la función de resumen es similar. Es como sigue,

En VBA Roundup es:

 Resumen (Número, (Número de dígitos después del decimal)) 

La función RoundUp es similar a una función round en VBA excel, pero la diferencia es que siempre redondea el número de los argumentos dados. Ahora, comprendamos los argumentos que brindamos para redondear la función.

Sabemos que ese número es el número que proporcionamos como entrada que se redondeará. El número de dígitos puede estar en tres escenarios de la siguiente manera:

  • Si el número de dígitos proporcionados es mayor que cero, el número se redondea al lugar decimal especificado.
  • Si se proporciona el número de dígitos ya que la entrada es igual a cero, entonces el número se redondea al entero más cercano.
  • Ahora, si el número de dígitos que se proporciona como entrada es menor que cero, entonces el número se redondea a la izquierda de su punto decimal.

La función RoundUp funciona de manera muy similar a la función de hoja de cálculo de Excel. Ahora tenga en cuenta que tiene valores decimales en la salida que devuelve en doble. Será claro con algunos ejemplos. Aprenderemos los tres aspectos de la función de resumen, es decir, menor que 0, igual a 0 y mayor que 0 en ejemplos. Para nuestros ejemplos, tomaremos la entrada de un usuario y un resumen y lo mostraremos.

¿Cómo redondear usando VBA?

Veamos los ejemplos de RoundUp en Excel VBA.

Puede descargar esta plantilla Excel de VBA RoundUp aquí - Plantilla Excel de VBA RoundUp

Ejemplo # 1 - Resumen de VBA

Comencemos con el número de dígitos proporcionados es menor que 0 y veamos cómo aparecen los resultados.

Paso 1: para comenzar con VBA, debemos estar en VB Editor, podemos hacerlo haciendo clic en la pestaña del desarrollador y luego en Visual Basic como se muestra en la captura de pantalla a continuación,

Paso 2: Ahora inserte un módulo en el Editor de VB donde comenzaremos con las macros de VBA, haga doble clic en el módulo que nos abrirá otra ventana donde escribiremos nuestro código,

Paso 3: Comience por una subfunción de la siguiente manera.

Código:

 Sub muestra () End Sub 

Paso 4: Declare dos variables como dobles y una como un número entero, una que almacenará el valor para la entrada, mientras que una almacenará el valor para la salida y una almacenará el valor para el número de dígitos que queremos redondear,

Código:

 Submuestra () Dim A, B Como Double Dim C Como Integer End Sub 

Paso 5: en la variable A, almacene el valor del número que se redondeará y en C almacene el valor de la cantidad de dígitos que se redondeará. Ambos valores los tomaremos como entrada de un usuario de la siguiente manera,

Código:

 Submuestra () Dim C como entero A = InputBox ("Ingrese un valor", "Valor en decimales") C = InputBox ("Ingrese el número de dígitos que se redondearán", "Ingrese menos que cero") End Sub 

Paso 6: en la variable B, almacene el valor redondeado de A de la siguiente manera,

Código:

 Submuestra () Dim A, B Como Double Dim C Como Entero A = InputBox ("Ingrese un valor", "Valor en decimales") C = InputBox ("Ingrese el número de dígitos que se redondearán hacia arriba", "Ingrese menos que cero ") B = Application.WorksheetFunction.RoundUp (A, C) End Sub 

Paso 7: Ahora use la función msgbox para mostrar el valor redondeado de A de la siguiente manera,

Código:

 Submuestra () Dim A, B Como Double Dim C Como Entero A = InputBox ("Ingrese un valor", "Valor en decimales") C = InputBox ("Ingrese el número de dígitos que se redondearán hacia arriba", "Ingrese menos que cero ") B = Application.WorksheetFunction.RoundUp (A, C) MsgBox B End Sub 

Paso 8: Ejecute el código anterior y proporcione la entrada de A de la siguiente manera,

Paso 9: haga clic en Aceptar, que le dará otro cuadro de entrada para dar el número de dígitos que se redondeará, dar -1 como entrada,

Paso 10: cuando presionamos ok obtenemos el resultado final redondeado,

Ejemplo # 2 - Resumen de VBA

En este ejemplo, tomaremos información del usuario para que varios dígitos se redondeen a 0.

Paso 1: Agregue un nuevo módulo en el VBA, en el módulo escriba otra subfunción para otra macro de la siguiente manera,

Código:

 Sub Sample1 () End Sub 

Paso 2: Declare nuevamente tres variables, dos de ellas como dobles, mientras que una como un entero de la siguiente manera,

Código:

 Sub Muestra1 () Dim A, B Como Doble Dim C Como Integer End Sub 

Paso 3: Sabemos que A almacenará la entrada para el número que se redondeará y B almacenará el número de dígitos que se redondeará de la siguiente manera,

Código:

 Submuestra1 () Dim A, B Como Double Dim C Como Entero A = InputBox ("Ingrese un valor", "Valor en decimales") C = InputBox ("Ingrese el número de dígitos que se redondearán hacia arriba", "Ingrese igual a cero ") Fin Sub 

Paso 4: en la variable C resumiremos el valor de entrada que tomamos del usuario y lo mostraremos usando la función msgbox de la siguiente manera,

Código:

 Submuestra1 () Dim A, B Como Double Dim C Como Entero A = InputBox ("Ingrese un valor", "Valor en decimales") C = InputBox ("Ingrese el número de dígitos que se redondearán hacia arriba", "Ingrese igual a cero ") B = Application.WorksheetFunction.RoundUp (A, C) MsgBox B End Sub 

Paso 5: Ahora ejecuta el código anterior presionando F5 y da la entrada para que un número se redondee de la siguiente manera,

Paso 6: haga clic en Aceptar y proporcione el número de dígitos que se redondeará a 0 de la siguiente manera,

Paso 7: Cuando hacemos clic en Ok, vemos el siguiente resultado,

Ejemplo # 3 - Resumen de VBA

Ahora usaremos la última y última opción para proporcionar el número de dígitos que sea mayor que cero y ver el resultado.

Paso 1: agregue un nuevo módulo y agregue una nueva subfunción de la siguiente manera,

Código:

 Sub Sample2 () End Sub 

Paso 2: Ahora declararemos nuevamente tres variables, dos de ellas como dobles y una como un número entero. Uno almacenará el valor de entrada si el número se redondeará, mientras que otro almacenará la entrada de varios dígitos,

Código:

 Submuestra2 () Dim A, B Como Double Dim C Como Entero A = InputBox ("Ingrese un valor", "Valor en decimales") C = InputBox ("Ingrese el número de dígitos que se redondearán hacia arriba", "Ingrese mayor que cero ") Fin Sub 

Paso 3: en el almacén de la variable B, el valor redondeado de A con la función de resumen es el siguiente y usa la función msgbox para mostrar el resultado,

Código:

 Submuestra2 () Dim A, B Como Double Dim C Como Entero A = InputBox ("Ingrese un valor", "Valor en decimales") C = InputBox ("Ingrese el número de dígitos que se redondearán hacia arriba", "Ingrese mayor que cero ") B = Application.WorksheetFunction.RoundUp (A, C) MsgBox B End Sub 

Paso 4: ahora ejecutamos el código y proporcionamos la entrada para el número que se redondeará,

Paso 5: haga clic en Aceptar y proporcione el número de dígitos redondeados como 2,

Paso 6: haga clic en Aceptar para ver el resultado final,

Cosas para recordar

Hay algunas cosas que debemos recordar sobre VBA RoundUp.

  • Es similar al resumen en VBA y Excel.
  • Toma una cantidad de dígitos como entrada menor que 0 o mayor que 0 o igual a 0.
  • En realidad es una función de hoja de trabajo que la usamos en VBA.
  • La salida devuelta por esta función es doble.

Artículos recomendados

Esta es una guía para el resumen de VBA. Aquí discutimos cómo usar Excel VBA Roundup junto con algunos ejemplos prácticos y una plantilla de Excel descargable. También puede consultar nuestros otros artículos sugeridos:

  1. ¿Cómo usar VBA While Loop?
  2. VBA Eliminar duplicados
  3. Comprender los tipos de datos de VBA
  4. VBA Sleep con ejemplos

Categoría: