
VBA DoEvents en Excel â evita que Excel se quede en «No responde» (y por quĂ© deja que tu macro corra dos veces)
DoEvents pausa tu macro por un instante y deja que Excel procese los clics, las pulsaciones de teclas y los repintados que se amontonaron mientras corrĂa tu cĂłdigo, que es lo que evita que la ventana se ponga gris en «No responde» y lo que hace posible un botĂłn de cancelar que funcione. Pero la misma cesiĂłn que mantiene vivo a Excel tambiĂ©n le devuelve el control al usuario a mitad de macro, asĂ que puede pulsar el mismo botĂłn otra vez y arrancar una segunda copia de tu macro dentro de la primera. Esa reentrada, no el rendimiento, es el verdadero peligro. Aprende dĂłnde colocar DoEvents, cĂłmo protegerte de la reentrada con un flag de ejecuciĂłn, por quĂ© debes moderar su frecuencia, y por quĂ© no es multihilo.















































































