Ci sarebbe un modo molto più semplice per impedire la chiusura di un form:


Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
If vbAppTaskManager Then 'Se il prog viene chiuso da task manager
Cancel = 1 'interrompe la chiusura del programma
End If
If vbFormControlMenu Then 'Se il form viene chiuso dalla X (o da alt+f4)
Cancel = 1 'interrompe la chiusura del programma
End If
If vbAppWindows Then 'Se si fa chiudi sessione
Cancel = 1 'interrompe la chiusura del programma
End If
End Sub

Altrimenti devi controllare i tasi che vengono premuti!