Subido por Fiorella Solorzano Ramos

04 VBA

Anuncio
Visual Basic for
Applications
María Teresa González Valencia
Luis Alejandro Villacorta Devoto
Uso de referencias
• Offset: Es un comando de VBA que permite ubicar
una celda de destino a partir de una celda de
referencia.
Ejemplo:
[a1].Offset(4,2) = “Nueva celda elegida”
• Resize: Redefine el rango seleccionado.
Ejemplo:
[c2].Offset(1,2).Resize(2,1) = 12
Comandos adicionales
• Referencia y activación del libro desde el que se
inició VBA:
ThisWorkbook.Worksheets(“Hoja1”).Activate
• Crear un variable objeto:
Set [variable] = [objeto]
Ejemplo:
Set librodatos = Workbooks(“L1”).Worksheets(“Hoja1”)
Estructuras de
programación
• Bucles cerrados: Realizan un conjunto de
comandos un número de veces determinado.
• For / Next: Se efectuará un número “i” de
repeticiones. Ejemplo:
For i = 1 To 7
[a1].offset(i,0) = Rnd
Next
Estructuras de
programación
• For / Next … Step: Se efectuará un número “i” de
repeticiones con un «salto» definido por el usuario.
Ejemplo:
For i = 1 To 7 Step 2
[b1].offset(i,0) = rnd
Next
• El “step” indica a VBA que las repeticiones se darán
del modo: 1, 3, 5, 7 (de dos en dos)
¿Qué implica un bucle dentro de otro?
Ejercicios
• 1. Crear una subrutina que cree un vector de
números aleatorios entre 30 y 2500. El tamaño del
vector (número de elementos) debe ser indicado
por el usuario, así como su posición inicial (celda
del primer valor).
• 2. Programe una macro que permita crear una
matriz de números aleatorios entre -80 y 200. El
usuario deberá indicar sólo el número de columnas
(el número de filas será siempre el doble). Deberá
borrar los contenidos de la hoja antes de crear una
nueva matriz.
Descargar