Tengo un módulo que contiene una función con un bucle do DoEvents loop while NOT Salir y una variable global Salir de tipo booleano que inicialmente vale TRUE.
La variable se modifica solamente cuando ocurre el evento Form_Click() ; en el código asociado a dicho evento, la variable Salir pasa a tomar el valor de FALSE.
El problema es que cuando hago click en el formulario el bucle no termina, sigue ejecutandose infinitamente, y no se porqué.

He puesto mensajes chivatos en varios lugares para ver si se detecta el evento de hacer click sobre el formulario y, efectivamente, así ocurre, en ese momento la variable cambia de valor, pero el bucle sigue ejecutandose.

¿Alguna solución o idea?
Gracias.
