Crea tus Propias Funciones Personalizadas en VBA Excel

Las funciones personalizadas en VBA para Excel le permiten crear sus propias fórmulas que encapsulan cálculos complejos o inusuales y nombrarlos como si fueran fórmulas integradas de Excel.

¿Para qué sirven?

  • Simplifica tareas repetitivas creando funciones personalizadas: En lugar de repetir la misma fórmula continuamente, encapsúlala en una función fácil de recordar.
  • Organiza tu código agrupando cálculos complejos: Mantén tu código VBA más limpio y organizado, lo que facilita su comprensión y mantenimiento.
  • Reutiliza tu código usando funciones personalizadas: Ahorra tiempo y esfuerzo al aplicar tus funciones en diferentes partes de tu proyecto de Excel.
  • Comparte tu trabajo con otros: Difunde tus funciones personalizadas con colegas o publícalas en línea para que otros puedan beneficiarse de ellas.

Ejercicio 1:

Calcular porcentaje de descuento

Crea una función personalizada llamada Descuento que calcule el precio final de un producto después de aplicar un porcentaje de descuento. La función debe recibir dos argumentos: el precio original y el porcentaje de descuento.

Solución:

Function Descuento(precioOriginal As Double, porcentajeDescuento As Double) As Double
    ' Cálculo del descuento
    descuento = precioOriginal * porcentajeDescuento / 100
    ' Cálculo del precio final
    precioFinal = precioOriginal - descuento
    ' Devolver el precio final
    Return precioFinal
End Function

Para usar la función:

Supongamos que el precio original de un producto es de $100 y quieres aplicar un descuento del 20%. Escribe la siguiente fórmula en una celda:

=Descuento(100, 20)

La celda mostrará el precio final con el descuento aplicado: $80.

Ejercicio 2:

Devolver mes con número o nombre

Crea una función personalizada llamada Mes que reciba un número de mes (1 a 12) y devuelva el nombre del mes correspondiente.

Solución:

Function Mes(numeroMes As Integer) As String
    Select Case numeroMes
        Case 1: Mes = "Enero"
        Case 2: Mes = "Febrero"
        Case 3: Mes = "Marzo"
        ' ...  y así para el resto de los meses
        Case 12: Mes = "Diciembre"
        Default: Mes = "Mes no válido"
    End Select
End Function

Para usar la función:

Escribe la siguiente fórmula en una celda, reemplazando 3 por el número del mes que deseas:

=Mes(3)

La celda mostrará el nombre del mes correspondiente: «Marzo».

Estructura del Select Case:

El bloque Select Case en VBA te permite evaluar una expresión y ejecutar diferentes acciones en función del resultado. Su estructura es la siguiente:

Select Case expresión
    Case valor1: Instrucciones para el caso 1
    Case valor2: Instrucciones para el caso 2
    ' ... y así para el resto de los casos
    Default: Instrucciones para el caso predeterminado
End Select

Recuerda:

  • Puedes crear funciones personalizadas para realizar una amplia variedad de tareas, desde cálculos simples hasta operaciones complejas que involucran múltiples pasos.
  • Documenta tus funciones personalizadas con comentarios para que otros

Crea tus propias funciones

Related Articles

Responses

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *