Ir al contenido principal

Seminario Macros Excel Gratuito 15 Entrega (Estructuras de programación o control 3ª parte)

Estructuras de Bucle

Cuando necesitamos que un proceso (instrucciones VBA) se repita un numero determinado de veces aparece la necesidad de crear bucles y para ello el VBA nos suministra varios tipos de estructuras.

Disponemos de las siguientes:
  • For..Next
  • While...Wend
  • Do While
  • Do Loop
  • For Each ...Next

For...Next

En general, la estructura For... Next se usa en aquellas situaciones en las cuales sabemos la cantidad de veces que queremos que se ejecute el bloque de instrucciones. En algunas ocasiones como máximo aunque también podemos salir antes si establecemos una condición de salida ... En su forma más típica y básica, esta estructura requiere una variable que cumple la función de un contador de ciclos. Normalmente usamos solo una letra según las convenciones mas habituales.

Ejemplo:
For i=1 to 10
 instrucciones
Next i

El ejemplo anterior repetiría las instrucciones 10 veces ya que la variable i empieza por 1 y cuando llega a la orden Next i se incrementa en una unidad.

También podemos hacer si nos interesa bucles inversos o que se incrementen en mas de una unidad y para ello usaremos el argumento step.

Ejemplo:
For i= 1 To 10 Step 2
    miFila = i
    Cells(miFila, 2) = i
Next i

al ejecutarlo obtendremos  lo siguiente:

Ejercicio:
Necesitamos crear una macro que cuente de 7 en 7  y vaya escribiendo en celdas el valor de dicho contador. El contador deberá empezar en -3 y terminar en 130. Deberá escribirse en la columna D desde la fila 1.

El resultado puede ser este:
Option Explicit
Dim i As Integer
Dim miFila As Integer
__________________________________________
Sub Ejercicio()
    
    miFila = 0
    For i = -3 To 130 Step 7
        Cells(1, "d").Offset(miFila, 0) = i
        miFila = miFila + 1
    Next

End Sub

Observamos el resultado:

 

Ejercicio Planteado:

Genere 100 celdas en la columna A con valores aleatorios entre 1 y 100 desde A1 y construya una macro que recorra esas 100 celdas y escriba a la derecha del primer valor 89 la palabra Localizado y finalice el recorrido.

Nota: Puede ocurrir que si no tiene ningún 89 no ponga nada

Para ver la solución puede pinchar en el siguiente enlace Ejercicio Planteado el cual se abrirá en nueva ventana y deberá descargarlo a su equipo como copia ya que las macros no funcionan en entorno Web.

En la próxima entrega explicamos la estructura While...Wend

Comentarios

Entradas populares de este blog

Chrome: desactivar la opción “Abrir siempre archivos de este tipo”

En Chrome, al descargar un archivo aparecen tres opciones en el desplegable de la barra de descargas:

Ajustar texto alrededor de una imagen en PowerPoint

PowerPoint no dispone de herramientas tan sofisticadas como tiene Word o Publisher para que el texto

Conectar Teléfono BQ M5 a PC

Cual no seria mi sorpresa que al conectar mi teléfono BQ M5 a mi ordenador Windows no aparece la posibilidad de ver su contenido.