INTRODUCCION:
Do-Until-Loop es similar a Do-While-Loop y a While-Wend, la diferencia esta en la en la forma en que expresamos la condicion: por ejemplo en Do-While-Loop y While-Wend la condicion podria ser " ejecutar el codigo mientras que la celda no este vacia" y en Do-Until-Loop seria "ejecutar el codigo hasta que la celda este vacia".
Para comparar con Do-While-Loop y While-Wend vamos a sumar un rango de números que están ubicados en una columna. En la hoja de cálculo solo debemos poner los números (sin dejar espacios en blanco) . Luego de aplicar la macro el resultado deberá quedar en la primera celda vacía.
Tambien en este caso sumaremos los mismos números que en los ejemplos de Do-While-Loop y While-Wend que introducimos en la columna "D" empezando por la "D1" y finalizando con la introducción del Nº 283226 como se ve en la figura
el programa VBA es
Explicación del código (los números representan las líneas de código)
1- Siempre se empieza con Sub seguida del nombre de la macro y 2 paréntesis (SumaColumna2()).
2- Seleccionamos la celda superior. "D1".
3- Asignamos a la variable “sum” (que es en la que quedará contenido el resultado) el valor de la celda superior.
4- Esta línea es la condición para entrar o salir del While y quiere decir "ejecutar el codigo hasta que la celda este vacia",
5- Aquí ya entramos en el While donde hay 2 líneas que se repiten hasta que la condición no se cumpla.
6- La primera línea dentro del While hace bajar una posición la celda seleccionada, de esta forma podemos acceder a su contenido y la segunda agrega este contenido a la variable "sum".
7-Con Wend Loop salimos o volvemos a entrar al ciclo según se cumpla o no la condición
8- Una vez que salimos del ciclo colocamos el resultado que queda en una celda activa.
9-Tanbien mostramos el resultado mediante un MsgBox (caja de mensajes)
10- Con esta línea se cierra el programa
Finalmente una vez que aplicamos la macro, la hoja nos queda
Se puede ver que los resultados en la celda activa y en la caja de mensajes coinciden.