Función de resumen de Excel y VBA

Aprender a usar la función "Roundup" de Excel desde su lenguaje de programación incorporado VBA, o Visual Basic para aplicaciones, lo ayuda a ejecutar cualquier función de Excel desde VBA. Esta habilidad es útil porque Excel tiene muchas funciones que VBA no tiene y que es posible que deba aplicar desde un programa de VBA. Tenga en cuenta que la función de VBA que le permite acceder a la función "Resumir" no le avisará de una sintaxis o un argumento incorrectos, como lo haría al utilizar la interfaz de hoja de cálculo estándar.

Propósito

La función "Redondear" de Excel redondea un número hacia arriba hasta el número de dígitos que especifique. Por ejemplo, ejecutar "Redondear (2.2, 0)" le dice a Excel que desea redondear el número 2.2 al siguiente entero. El "0" en el segundo argumento le dice a Excel que no quiere dígitos después del punto decimal, lo que equivale a decir que quiere una respuesta entera.

Función de ronda VBA

VBA no tiene una función "Redondear". La función más cercana que tiene es la función "Redondear", que redondea hacia arriba o hacia abajo dependiendo de si el dígito final en el número que está redondeando es mayor o menor que 5. Por ejemplo, escribir "Redondear (2.2, 0)" en la ventana "Inmediato" de VBA da como resultado un 2, en lugar del 3 al que redondearía la función "Redondear" de Excel.

Propiedad "Fórmula"

Aunque VBA no tiene una función de "Redondeo" propia, puede usar la función "Redondeo" de Excel. Para indicarle a VBA que haga esto, establezca la propiedad "Fórmula" del objeto virtual "Rango" en la función "Redondear". El siguiente ejemplo le muestra cómo hacer esto. Abra el entorno de desarrollo de VBA presionando "Alt" y "F11" simultáneamente desde Excel. Haga clic con el mouse en la ventana "Inmediato", luego escriba la siguiente declaración:"Rango ("A1").Fórmula ="=Redondeo (2.2, 0)"." Regrese a Excel usando la tecla "Alt-F11" que se acaba de describir. Verá el resultado "3" en la celda A1, lo que indica que su declaración aplicó con éxito la función "Redondear" de Excel.

Ejemplo interactivo

Puede crear un programa VBA interactivo que acepte de un usuario los argumentos para la función "Redondear" y muestre el resultado de esa función. Después de abrir el entorno de desarrollo de VBA, pegue el siguiente programa en la ventana:

Public Sub roundUpANNumber() Dim a1, a2, s a1 =CDbl(InputBox("Ingrese el número que desea redondear")) a2 =CInt(InputBox("Ingrese el número de decimales al que desea redondear el número que acaba de ingresar.")) s ="=Redondear(" &a1 &"," &a2 &")" Rango("A1").Fórmula =s Rango("A1").Calcular MsgBox (Rango( "A1").Valor) End Sub

Ejecute el programa haciendo clic en una de sus declaraciones, luego haga clic en el comando "Ejecutar" del menú "Ejecutar". Cuando Excel te solicite los argumentos de la función, escríbelos y presiona "Enter". Su programa mostrará el resultado de la función "Redondear" para los argumentos que ingresó.