INTRODUCCION:
Esta es una iteración en la que no sabemos de antemano cuantas veces se repetirá el ciclo por lo tanto debe haber una condición para salir de el ya que en caso contrario el ciclo se repetiría en forma indefinida.
Para explicar While - Wend me parece que lo mejor es dar un ejemplo en el que iremos analizando cada línea de código.
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.
En este caso sumaremos una cantidad indefinida de números naturales los 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 (Sum()).
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 "mientras la celda activa no este vacía",
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 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 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.