Documentos de Académico
Documentos de Profesional
Documentos de Cultura
En este capítulo
Son funciones creadas en el editor de VBA para resolver casos específicos del
negocio. El propósito de funciones definidas por el usuario es permitir al usuario
crear una función personalizada que no se incluye en las funciones de Microsoft
Excel.
Es así que Excel deja abierta la posibilidad a sus usuarios de definir cuantas
funciones personalizadas desee, ya sea para un libro en concreto o disponibles en una
especie de “librerías” (complementos) para que puedan ser usadas desde cualquier
otro libro que la necesite.
Funciones personalizadas
Para este ejemplo asumiremos que deseamos crear una función llamada SinIGV que
desagregue el IGV de un importe.
Ingrese al Editor de VBA e inserte un módulo
Lectura Dentro de esta nueva ventana se escribe la función entre las palabras
reservadas Function y End Function.
Sintaxis
Luego del nombre de la función debe indicar todos los parámetros que esta necesitará
para realizar su cálculo. Estos parámetros se separan con comas y cada uno se define
indicando su nombre y luego su tipo, de la siguiente forma:
NombreParámetro AS Tipo
b. En la celda C6 se tiene:
=SinIGV(B6)
3. Las funciones UDF son consideradas como otra función de Excel, por
ejemplo, el nombre se muestra automáticamente si la escribe en su hoja
de cálculo:
Donde:
S P(1 i) n P = capital
i = tasa efectiva mensual
n = Número de períodos
N = periodo en meses
En este ejemplo se deben enviar 3 argumentos: el capital depositado ( P ), la tasa ( i) y el
periodo de depósito ( n ). Considere la tasa efectiva mensual.
Objetivo:
Resolver una función con la estructura IF / ENDIF para decisiones.
La función se llama IMPORTE, calcula el importe obtenido por las horas extras,
teniendo en cuenta que se trabajar 160 horas, el resto de hora se aplica como horas extras
con el 50% adicional
Estructura
IF pregunta THEN
Expressión verdarera
ELSE
Expresión falsa
END IF
Objetivo:
Resolver una función aplicando funciones de texto y fecha.
Se desea obtener una función que genera la cuenta de usuario, considerando lo siguiente:
Ejemplo :
inicial = Left(nombre, 1)
espacio = InStr(nombre, " ")
apellido = Mid(nombre, espacio + 1, Len(nombre) - espacio)
año = Year(fecha)
Genera = LCase(inicial & apellido & año)
End Function