Ho una Function ... as Boolean in cui elaboro una immagine, con alcuni counter di controllo, per non rileggere l' immagine più volte in caso di errori.
Il codice interessato dalla domanda:
codice:
Debug.Print("Counter: " & Counter & " -N: " & N)
If Counter = 0 Then
If N < 2 Then
Debug.Print("Rileggo la immagine: è vuota.......................")
Application.DoEvents()
Sleep(500)
Cattura(2)
Else
Debug.Print("Immagine è sempre vuota.........Return False")
Return False
Debug.Print("Return??????????")
End If
End If
Debug.Print("Continuo dopo l' If......")
Il risultato dei Debug di controllo:
codice:
Counter: 0 -N: 0
Rileggo la immagine: è vuota.......................
Counter: 0 -N: 2
Immagine è sempre vuota.........Return False
Continuo dopo l' If......
In poche parole dopo aver passato il codice: "Return False" il codice non esce dalla Function, ma solo dall' If... Then e continua tranquillamente ad elaborare una immagine che non dovrebbe elaborare in quanto con il Return False dovrebbe uscire dalla Function....