Visual Basic for
Applications
María Teresa González Valencia
Luis Alejandro Villacorta Devoto
Grabadora de macros
• La Grabadora de macros permite tener un registro
completo de toda acción realizada por el usuario
en Excel.
• Es posible conocer los comandos que usa VBA para
determinadas operaciones. (Por ejemplo, la
asignación de colores, tamaño de letra, bordes).
Grabadora de macros
• Ubicación de la grabadora de macros:
Comandos
• WorksheetFunction: Permite utilizar fórmulas de
Excel para realizar programación en el entorno de
VBA.
• Ejemplo:
[A4] = [Link](2, 5, [F15], Range(“E1:E8”))
[D2] = [A4]+[Link](16, [A4])
num = [Link]([A1], [A2])
Comandos
• Rnd: Genera un número aleatorio de distribución
uniforme cuyo valor se encuentra entre 0 y 1.
¿Cómo hacer que el número se encuentre
entre otros dos valores cualesquiera?
Comandos
• Rnd: Genera un número aleatorio de distribución
uniforme cuyo valor se encuentra entre 0 y 1.
¿Cómo hacer que el número se encuentre
entre otros dos valores cualesquiera?
• Forma:
variable = a + (b-a)*Rnd
a: Valor mínimo
b: Valor máximo
Cuadros de diálogo
• Pueden utilizarse para informar al usuario o pedirle
que introduzca información.
• Para notificar al usuario:
MsgBox(“Información al usuario”)
• Para pedir información al usuario:
InputBox(“Ingrese el dato”)
¿Dónde se guarda esta información?
Concatenar texto
• Para concatenar textos, se requiere el uso del
símbolo “ & “
• Ejemplo:
nom = “Nombre”
[b2] = “Apellido”
[c2] = nom & [b2]
¿Cómo hacer para incluir espacios?
Inputbox y números
• Ejemplo:
num1= Inputbox(“Ingrese el primer número”)
num2= Inputbox(“Ingrese el segundo número”)
[c6] = num1 + num2
¿Hay consistencia en el resultado?
Borrado de Celdas
• Para borrar el contenido de un rango:
o Range(“A1:B12”).ClearContents
o [Link]
• Para borrar el contenido y los formatos de un
rango:
o Range(“A1:B12”).Clear
o [Link]
Ejercicios
• 1. Crear una subrutina que pida al usuario ingresar
las notas del curso de informática. Debe calcularse
el promedio del curso según ponderadores, y luego
informar al usuario la nota final del curso.
• 2. Programar una macro que muestre, en la Hoja3,
4 valores aleatorios entre -10 y 45.5. Luego debe
pedirse al usuario su nombre, y en una celda
aparte de la Hoja2 debe figurar “El resultado para
[nombre] es xxxxx” Donde xxxxx es la desviación
estándar de los valores obtenidos en la Hoja3
Algunos comandos de
Excel en inglés
• Suma: [Link]()
• Promedio simple: [Link]()
• Mediana: [Link]()
• Moda: [Link]()
• Mínimo: [Link]()
• Máximo: [Link]()
• Desviación estándar: [Link]()
• Varianza: [Link]()
• BuscarV: [Link]()
• BuscarH: [Link]()