Respuesta inesperada con un InputBox

3 envíos / 0 nuevos
Último envío
Jose Luis Casla...
Imagen de Jose Luis Casla Araiz
Offline
última acción: Hace 1 año 1 mes
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntos
alta: 11/05/2012 - 15:15
Puntos: 1785
Respuesta inesperada con un InputBox

Hola:

Tengo un InputBox tan simple como esto:

Responsable = Application.InputBox(Prompt:="Nombre del responsable ", Title:="")

Quiero "capturar" la respuesta y colocarla en una celda de una hoja que voy a imprimir.

Todo funciona ... excepto en el caso en que por error al teclear esta respuesta, se le de a la tecla Esc del teclado.

En ese caso, me pone en la celda la palabra "Falso".

¿ Como se puede prevenir esto para que en el caso del error al teclear, me avise algo en pantalla y evitar que me ponga en la celda la palabra "Falso" y en todo caso me permita volver a teclear correctamente?

Saludos cordiales.

José Luis Casla

Cron
Imagen de Cron
Offline
última acción: Hace 8 meses 2 días
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntos
alta: 23/06/2010 - 12:30
Puntos: 12735
Puedes poner un If

Puedes poner un 

If Responsable = false then....

O mejor,

If Responsable <> false then...

Un saludo

Jose Luis Casla...
Imagen de Jose Luis Casla Araiz
Offline
última acción: Hace 1 año 1 mes
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntos
alta: 11/05/2012 - 15:15
Puntos: 1785
Hola Cron:Como siempre,

Hola Cron:

Como siempre, gracias.

Me has acercado a la solución.

He puesto tal como me indicas de esta manera: 

Control:

Responsable = Application.InputBox(Prompt:="Nombre del responsable ", Title:="") 

If Responsable = False then goto Control:

Y me ha funcionado "a medias" y no se por que.

Es decir. Si le doy a la tecla Esc regresa a la etiqueta Control: y me permite entrar de nuevo en el InputBox

Pero a continuación introduzco cualquier dato como por ejemplo "Manolo" y me salta un error... diciendo que Responsable y "Manolo" son tipos diferentes teniendo definida la variable Responsable como String...

Total, que se me ha ocurrido hacer la comparacion no con el valor logico False, sino con el string "Falso" y ahora funciona sin problemas...

If Responsable = "Falso" then goto Control:

Asi que resuelto.

Muchas gracias Cron.

Saludos cordiales.

Jose Luis Casla