esattamente dove hai detto te, dapprima subito prima dello sleep e poi testando in diversi punti...

ma comunque quando il programma arriva a leggere quelle righe di codice il grosso è fatto, non ci sono loop in corso... non è che un DoEvents possa risolvere molto, imho