Argumentos de las Funciones y Fórmulas en Excel
Las fórmulas y funciones en Excel requieren de la designación correcta de sus argumentos. Por ejemplo una suma requiere definir sus elementos, una resta el minuendo y sustraendo.
Si las celdas que van a operar son contiguas, se hace más fácil pues sólo debemos indicar en el argumento el inicio y el final del grupo de celdas. Podemos ver en el ejemplo de la imagen la forma aritmética natural en la que se pueden sumar uno a uno los elementos, y la alternativa de separar con dos puntos “:” la primera y última celda del grupo que necesitas incluir en el arreglo de la suma.
Ejemplo de la función SUMA en Excel:
Esta modalidad puede aplicarse a la mayoría de las fórmulas y funciones de Excel, respetando por supuesto las reglas de cada operación.
Estructura de las funciones y fórmulas de Excel y su comparación en VBA
A continuación te explicamos las estructuras de las funciones y fórmulas más usadas en Excel y su equivalencia en VBA (Visual Basic For Applications).
La palabra “Expresión” en las columnas de las tablas correspondientes a VBA te indicarán que es una función de hoja de cálculo; es decir, para utilizarlas deberías sustituir el término “Expresión” por “Application.WorksheetFunction”. Si tu macro está desarrollada en Excel para operar en esa misma aplicación, no es necesario escribir “Application” (bastaría con sustituir "Expresión" por "WorksheetFunction"), aunque siempre es recomendable hacerlo para asegurar la estabilidad de tu código.
Es importante que conozcas que cualquier fórmula que escribas en una hoja de cálculo también la podrías escribir en el código VBA, sin embargo en algunos casos no habrá una equivalencia directa entre las fórmulas en Excel y VBA; si te encontraras en esa situación solo tendrías que hacer unas pocas cosas para lograr el cálculo que deseas.
Cálculo de operaciones aritméticas y matemáticas
A continuación te presentamos la estructura de algunas de las operaciones matemáticas básicas en Excel, como lo son la Suma, Resta, Multiplicación, División, Potencia y Raíz Cuadrada. También te mostramos cómo escribir estas operaciones en tu código VBA.
Operación | Estructura Excel | Ejemplo Excel | Estructura VBA | Ejemplo VBA |
Suma (opción 1) | =SUMA(Arg1 : Arg3) | =SUMA(A1:A3) | Expresión. Sum(Range(Arg1, Arg3)) | Expresión. Sum(Range( Cells(1, 1), Cells(3, 1))) |
Suma (opción 2) | Arg1+ Arg2 + Arg3 | =A1+A2+A3 | Arg1 + Arg2 + Arg3 | Cells(1,1)+Cells(2,1)+ Cells(2,1) |
Resta | Arg1 - Arg2 | =A1-A2 | Arg1 - Arg2 | Cells(1,1)-Cells(2,1) |
Multiplicación | Arg1 * Arg2 | =A1*A2 | Arg1 * Arg2 | Cells(1,1)*Cells(2,1) |
División | Arg1 / Arg2 | =A1/A2 | Arg1 / Arg2 | Cells(1,1)/Cells(2,1) |
Potencia (opción 1) | Arg1^Arg2 | =A1^A2 | Arg1^Arg2 | Cells(1,1)^Cells(2,1) |
Potencia (opción 2) | =POTENCIA(Arg1; Arg2) | =POTENCIA(A1; A2) | Arg1^Arg2 | Cells(1,1)^Cells(2,1) |
Raíz Cuadrada | =RAIZ(Arg1) | =RAIZ(A1) | Sqr(Arg1) | Sqr(Cells(1, 2)) |
Ejemplo del uso de las fórmulas Suma, Resta, Multiplicación, División, Potencia y Raíz Cuadrada en Excel:
En la siguiente tabla te resumimos la estructura de otras operaciones de uso común en Excel, como el cálculo del Promedio, Desviación Estándar e Intervalo de Confianza. También encontrarás la estructura de las funciones Contar y ContarA, que se usan para contar el número de celdas de un rango que contienen números (Contar) o que no están vacías (ContarA).
Operación | Estructura Excel | Ejemplo Excel | Estructura VBA | Ejemplo VBA |
Celdas no vacías en rango (opción 1) | = CONTARA (Arg1; Arg2; Arg3) | =CONTARA(A1; A2; A3) | Expresión.CountA( Arg1, Arg2, Arg3) | Expresión.CountA(Range(Cells(1, 1), Cells(2, 1), Cells(3, 1))) |
Celdas no vacías en rango (opción 2) | = CONTARA (Arg1: Arg3) | =CONTARA(A1:A3) | Expresión. CountA ( Range(Arg1, Arg3)) | Expresión.CountA(Range(Cells(1, 1), Cells(3, 1))) |
Celdas con números en rango (opción 1) | = CONTAR (Arg1; Arg2; Arg3) | =CONTAR(A1; A2; A3) | Expresión.Count( Arg1, Arg2, Arg3) | Expresión.Count(Range(Cells(1, 1), Cells(2, 1), Cells(3, 1))) |
Celdas con números en rango (opción 2) | = CONTAR (Arg1: Arg3) | =CONTAR(A1:A3) | Expresión.Count( Range(Arg1, Arg3)) | Expresión.Count(Range(Cells(1, 1), Cells(3, 1))) |
Promedio (opción 1) | =PROMEDIO(Arg1; Arg2; Arg3) | =PROMEDIO(A1; A2; A3) | Expresión.Average( Arg1, Arg2, Arg3) | Expresión.Average(Cells(1,1), Cells(2,1), Cells(3,1)) |
Promedio (opción 2) | =PROMEDIO(Arg1: Arg3) | =PROMEDIO(A1:A3) | Expresión.Average( Range(Arg1, Arg3)) | Expresión.Average(Range( Cells(1,1), Cells(3,1)) ) |
Desviación estándar (opción 1) | =DESVEST(Arg1; Arg2; Arg3) | =DESVEST(A1;A2;A3) | Expresión.StDev(Arg1, Arg2, Arg3) | Expresión.StDev( Cells(1,1), Cells(2,1), Cells(3,1) ) |
Desviación estándar (opción 2) | =DESVEST(Arg1: Arg3) | =DESVEST(A1:A3) | Expresión.StDev( Range(Arg1, Arg3)) | Expresión.StDev(Range(Cells(1, 1), Cells(3, 1))) |
Intervalo de confianza (opción 1) | =INTERVALO.CONFIANZA.NORM(Arg1; Arg2; Arg3) | INTERVALO.CONFIANZA.NORM(0,95;2;3) | Expresión. Confidence_Norm( Arg1; Arg2, Arg3) | Expresión.Confidence_Norm( 0.95, 2, 3) |
Intervalo de confianza (opción 2) | =INTERVALO.CONFIANZA.NORM(Arg1; Arg2; Arg3) | =INTERVALO.CONFIANZA.NORM(0,95;F5;F3) | Expresión. Confidence_Norm( Arg1; Arg2, Arg3) | Expresión.Confidence_Norm( alpha, Sigma, n) |
Ejemplo del uso de las fórmulas Contar, ContarA, Promedio, Desvest e Intervalo.Confianza.Norm en Excel.
Redondeo
Una función de mucha utilidad en Excel es el redondeo de nuestro cálculo, ya que contribuye a hacer una presentación elegante de los resultados obtenidos.
En la siguiente tabla conocerás las estructuras de los tipos de redondeo y su equivalencia directa en VBA. En la tabla observarás dos argumentos, el primero se refiere al número que deseas redondear y el segundo a la cantidad de decimales o factor de multiplicación que gobernará el redondeo.
Tipo de redondeo | Estructura Excel | Ejemplo VBA | Estructura Excel | Ejemplo VBA |
Redondeo | =REDONDEAR( Arg1; Arg2) | =REDONDEAR( 3,141592653589;2) | Expresión.Round(Arg1, Arg2) | Expresión.Round( 3.141592653589, 2) |
Hacia arriba | REDONDEAR.MAS( Arg1; Arg2) | =REDONDEAR.MAS( 3,14159265358979;0) | Expresión.RoundUp( Arg1, Arg2) | Expresión.RoundUp(3.141592653589, 0) |
Hacia abajo | =REDONDEAR.MENOS( Arg1; Arg2) | =REDONDEAR.MENOS( 3,141592653589;0) | Expresión.RoundDown( Arg1, Arg2) | Expresión.RoundDown(3.141592653589, 0) |
Múltiplo | =REDOND.MULT( Arg1; Arg2) | =REDOND.MULT( 3,141592653589;0,2) | (*) | (*) |
Ejemplo del uso de la función Redondear en Excel:
Operaciones Lógicas
Las funciones lógicas son de mucha utilidad en Excel ya que permiten decidir qué acciones o cálculos serán llevados a cabo según el valor de algún(as) celdas. En la siguiente tabla conocerás las estructuras de algunas de estas funciones y su equivalencia directa en VBA.
Prueba Lógica | Estructura Excel | Ejemplo Excel | Estructura VBA | Ejemplo VBA |
"Igual que" | = Arg1= Arg2 | =B2=10 | Arg1= Arg2 | Cells(2,2)=10 |
"Mayor que" | = Arg1> Arg2 | =B2>10 | Arg1> Arg2 | Cells(2,2)>10 |
"Menor que" | = Arg1< Arg2 | =B2<10 | Arg1< Arg2 | Cells(2,2)<10 |
"Mayor o igual que" | = Arg1>= Arg2 | =B2>=10 | Arg1>= Arg2 | Cells(2,2)>=10 |
"Menor o igual que" | = Arg1<= Arg2 | =B2<=10 | Arg1<= Arg2 | Cells(2,2)<=10 |
"Y" | =Y(Arg1>= Arg2; Arg3>= Arg4) | =Y(B2>=10; 8>=B3; 8>=10) | PruebaLogica1 And PruebaLogica2 | Cells(2, 2) >= 10 And Cells(3, 2) >= 10 |
"O" | =O(Arg1>= Arg2; Arg3>= Arg4) | =O(B3>=10; 8>=B4; 8>=10) | PruebaLogica1 Or PruebaLogica2 | Cells(2, 2) >= 10 Or Cells(3, 2) >= 10 |
Condicional | =O(PruebaLogica; ResVerd; ResFalso) | =SI((B2>=10)= VERDADERO;" Aprobado"; "Reprobado") | If PruebaLogica Then ResVerd Else ResFalso End If |
If Cells(2, 2) > 10 Then Cells(9, 5) = "Aprobado" Else Cells(9, 5) = "Reprobado" End If |
Donde:
- PruebaLogica: es la evaluación que deseas hacer. Debe ser formulada de manera que su resultado sea VERDADERO o FALSO.
- ResVerd: es la acción que se haría en caso de que el resultado de la prueba lógica resulta VERDADERO.
- ResFalso: es la acción que se haría en caso de que el resultado de la prueba lógica resulta FALSO.
Ejemplo del uso de las pruebas lógicas en Excel:
Fórmulas con Fecha y Hora
Las funciones con la fecha y hora nos permiten extraer información de tiempo (fecha y hora) del contenido de las celdas de nuestra hoja de cálculo. En la siguiente tabla conocerás las estructuras de las funciones relacionadas con las fechas y el tiempo.
Función | Estructura Excel | Ejemplo Excel | Estructura VBA | Ejemplo VBA |
Ahora | =AHORA() | =AHORA() | Now() | Now() |
Año | =AÑO(Arg1) | =AÑO(B2) | Year(Arg1) | Year(Cells(2,2)) |
Mes | =MES(Arg1) | =MES(B2) | Month(Arg1) | Month(Cells(2,2)) |
Dia | =DIA(Arg1) | =DIA(B2) | Day(Arg1) | Day(Cells(2,2)) |
Hora | =HORA(Arg1) | =HORA(B2) | Hour(Arg1) | Hour(Cells(2,2)) |
Minuto | =MINUTO(Arg1) | =MINUTO(B2) | Minute(Arg1) | Minute(Cells(2,2)) |
Segundo | =SEGUNDO(Arg1) | =SEGUNDO(B2) | Second(Arg1) | Second(Cells(2,2)) |
Día de la semana | =DIASEM(Arg1) | =DIASEM(B2) | Weekday(Arg1) | Weekday(Cells(2,2)) |
Fracción de año | =FRAC.AÑO(Arg1; Arg2) | =FRAC.AÑO(B2;B3) | Expresión.YearFrac(Arg1, Arg2 | Expresión.YearFrac(Cells(2,2), Cells(3,2)) |
Ejemplo del uso de las funciones de Año, Mes, Día, Hora, Minuto, Segundo, Día de la Semana y Fracción del año en Excel.
Operaciones con Texto
Existen algunas funciones que nos permiten modificar el texto introducido en las celdas de nuestro libro o extraer información del texto contenido en las celdas. En la siguiente tabla conocerás las estructuras de las funciones para manipulación de texto y su equivalencia directa en VBA.
Función | Estructura | Ejemplo | Estructura | Ejemplo |
Concatenar (opción 1) | Arg1&Arg2 | B2 & " " & B3 | Arg1 & Arg2 | Cells(2,2) & “ “ & Cells(3,2) |
Concatenar (opción 2) | =CONCATENAR( Arg1, Arg2) | =CONCATENAR( B2; " ";B3) | Arg1 & Arg2 | Cells(2,2) & “ “ & Cells(3,2) |
Caracteres desde la derecha | =DERECHA(Arg1; NumCaract) | =DERECHA(B2;2) | Right(Arg1, NumCaract) | Right(Cells(2, 2), 2) |
Caracteres desde la izquierda | =IZQUIERDA( Arg1; NumCaract) | =IZQUIERDA(B2;2) | Left(Arg1, NumCaract) | Left(Cells(2, 2), 2) |
Longitud del texto | =LARGO(Arg1) | =LARGO(B2) | Len(Arg1) | Len(Cells(2, 2)) |
Extraer caracteres del texto | =EXTRAE(Arg1; PosInic; NumCaract) | =EXTRAE(B2;2;2) | Mid(Arg1, PosInic, NumCaract) | Mid(Cells(2, 2), 2, 2) |
Reemplazar | =SUSTITUIR(Arg1; Arg2; Arg3) | =SUSTITUIR(“Hola Mundo”;" ";"") | Replace(Arg1, Arg2, Arg3) | Replace(Cells(2, 2) & " " & Cells(3, 2), " ", "") |
Minúscula | =MINUSC(Arg1) | =MINUSC(B2) | LCase(Arg1) | LCase(Cells(2, 2)) |
Mayúscula | =MAYUSC(Arg1) | =MAYUSC(B2) | UCase(Arg1) | UCase(Cells(2, 2)) |
Donde:
- Arg1, Arg2, Arg3: son los argumentos (textos) de la función
- PosInic: es la posición inicial de la manipulación del texto
- NumCaract: es la cantidad de caracteres del texto que serán modificados o extraídos.
Ejemplo del uso de las funciones de manipulación y extracción de textos en Excel:
Quieres saber más? Contáctanos…