0% encontró este documento útil (0 votos)
24 vistas

MACROS

MACROS
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
24 vistas

MACROS

MACROS
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 19

MACROS

Aplicaciones VBA con Excel


Implementación de funciones VBA y uso
en Excel
1. Habilitar la ficha Desarrollador o Programador
2. Deshabilitar la seguridad de las macros
• Desarrollador (Programador) / Seguridad de macros / Deshabilitar todas las
macros sin notificación / Activar confiar en el acceso al modelo de objetos de
proyectos VBA.
3. Acceder al Editor de VB → Alt + F11
4. Agregar un módulo → Insertar / Módulo
5. Escribir el siguiente código…. (siguiente diapositiva)
6. Pruebe la función en VBA en Excel
• En una celda de la hoja de Excel escriba =calculaedad(C5)
Caso # 1
Función que muestra la edad
1 Function CalculaEdad(ByVal fecha As Date) As Integer
2 CalculaEdad = Year(Date) - Year(fecha)
End Function
3

Toda función en VBA se inicia con la palabra reservada Function, luego se especifica el nombre de la
1 función; aquí se debe tener especial cuidado pues un nombre de función no puede tener espacios
en blanco.

La segunda línea especifica la salida de la función, es decir, Year(Date) - Year(fecha) enviará la fecha
2
actual a la función y cuando alguien invoca a CalculaEdad; este le enviará la edad actual

3 Finalmente, End Function especifica el fin de la función.


La función CalculaEdad recibe como parámetro la fecha de nacimiento
de una persona, esta debe ser recibida como tipo DATE y al final de la
línea se especifica el tipo de salida de la función para este caso se usó
INTEGER, porque la edad resultante será un número entero.

YEAR(DATE) determina el año de la fecha actual y YEAR(FECHA)


determina el año de la fecha ingresada. Finalmente, el resultado es
enviado a la función.
Caso # 2
La función CalculaPromedio recibe como parámetro las dos notas del
alumno, estos deben ser declarados como INTEGER y la salida como
DOUBLE, porque estos podrían resultar decimales al promediar ambas
notas.
Finalmente, asignamos la formula del promedio a la función usando la
función FORMAT que nos permitirá mostrar a dos decimales el
promedio de notas.
Caso # 3
La función calculapago recibe como parámetro el precio del producto el
cual es declarado como CURRENCY por tratarse de un valor monetario y la
cantidad de tipo INTEGER por tratarse de la cantidad de productos
comprados. La salida de la función debe ser declarada como CURRENCY por
ser un valor monetario.
Finalmente, se asigna el producto del precio y la cantidad al nombre de la
función, usamos la función FORMAT para especificar la cantidad de
decimales a mostrar en el resultado.
Caso # 4
La función calculapago recibe como parámetro el pago por hora de tipo
CURRENCY por ser un valor monetario y también las horas de trabajo de
tipo INTEGER. La salida de la función CURRENCY por ser un valor
monetario.
Caso # 5
La función calculaTiempo recibe como parámetro un valor entero en
segundos, la salida de esta función será del tipo cadena por combinar
números y símbolos (:) en una determinada hora.
DIM hora As INTEGER, permite declarar la variable hora dentro de la función;
aquí se almacenará la hora a partir de los segundos enviados como
parámetro. Asimismo, la variable minutos y seg son declaradas como
enteros; este último se declaró como seg para no confundirlo con el
parámetro SEGUNDOS.
El parámetro \ devuelve un valor entero entre la división de dos números, la
función MOD devuelve un valor que representa al resto de la división entre
dos números.
Finalmente, el resultado es enviado a la función, debe tener en cuenta que
en el formato se asignó 00 para que los minutos y segundos se muestren
siempre a dos cifras.

También podría gustarte