Hola tengo un ejemplo pero no se si es lo que quieres, el siguiente codigo lo que hace es bloquear el teclado y el raton durante un tiempo determinado, que en el caso del ejemplo es de 10 segundos a partir de que pulses el boton aceptar del msgbox.
Al ejemplo agregale un timer en el formulario y agregale un modulo al formulario.
CODIGO PARA EL MODULO: Cita: Public Declare Function BlockInput Lib "user32" (ByVal fBlock As Long) As Long
CODIGO EN EL FORMULARIO: Cita: Private Sub Form_Load()
MsgBox "'Durante 10 segundos el teclado y mouse quedaran bloqueados"
Timer1.Interval = 1000
BlockInput True 'esto bloquea el teclado y el raton'
End Sub
Private Sub Timer1_Timer()
Static contador As Integer
contador = contador + 1
If contador = 10 Then BlockInput False: MsgBox "TIEMPO! desbloqueado"
'esto desbloquea el teclado y el raton a los 10 segundos'
End Sub
NOTA: lo malo de este codigo es que alguien pudiera desbloquear pulsando las teclas a la vez control + alt + Supr y asi acceder al adminitrador de tareas.
No se si te vale de algo el ejemplo SALU2