Excel - Resumir desde un cuadro de diálogo

   
Vista:

Resumir desde un cuadro de diálogo

Publicado por Esther (2 intervenciones) el 14/02/2011 15:29:42
Buenas,
Estoy preparando una macro que comprueba si se han rellenado todos los campos de un formulario. Si algún campo no ha sido rellenado salta un cuadro de diálogo tipo "no has rellenado tal campo, rellénalo y a continuación haz clic en "Continuar"...". El cuadro es muy sencillo, y lo que espero de él es que cuando el usuario pulse el botón continuar haga un "resume", es decir, que continúe con la ejecución de la macro inicial volviendo a ejecutar la instrucción que "dió fallo" (es decir, la que llamó al cuadro de diálogo). Pero por más vueltas que le doy no me aclaro, ya que creo que la instrucción "resume" va insertada en el código de la macro, cuando yo lo que quiero es asociarla al botón del cuadro de diálogo...
¿Algún alma caritativa que pueda/quiera ayudarme?
: )
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JuanC

RE:Resumir desde un cuadro de diálogo

Publicado por JuanC (1054 intervenciones) el 14/02/2011 15:48:01
podrías probar con algún Goto
ejemplo:

begin:

'hacer algo

If pasa_algo Then Goto begin

Saludos, desde Baires, JuanC
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Resumir desde un cuadro de diálogo

Publicado por Esther (2 intervenciones) el 14/02/2011 17:29:25
¡Qué rapidez! ¡Estupendo!
Muchas gracias, JuanC. Estoy probando con la instrucción Goto, pero ¿realmente se puede usar para ir a una línea de código que está en otro procedimiento? Me está liando mucho esto de que el código del cuadro de diálogo esté en otro "módulo" y no en el mismo... ¡no consigo llamarlo!

Éste es el código de la macro :

Sub ComprobarFormadePago()

' Comprobar que el comercial ha rellenado el campo "Forma de Pago". En caso contrario, mostrar un cuadro de diálogo advirtiendo del error.

FormadePago:
Sheets("Desplegables").Select
If Cells(130, 3) = 1 Then
' Aquí es donde debería llamar al User Form pero no sé cómo...
End If

Y éste es es código del cuadro de diálogo (UserFormFormadePago)

Private Sub UserForm_Initialize()

Load UserFormFormadePago
UserFormFormadePago.Show

End Sub

Private Sub CommandButton1_Click()

' Ocultar el cuadro de diálogo

Unload UserFormFormadePago
UserFormFormadePago.Hide

' Retomar la ejecución de la macro Crear_Ficha_Nuevo_Cliente, volviendo a ejecutar la instrucción que dio error

GoTo FormadePago

End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JuanC

RE:Resumir desde un cuadro de diálogo

Publicado por JuanC (1054 intervenciones) el 14/02/2011 19:01:44
la respuesta es no
que el código esté en otro módulo no es problema siempre y cuando
sea de alcance público el procedimiento
para llamar al Form simplemente puedes usar el método Show del mismo
ten mucho cuidado de no entrar en un bucle infinito...

Saludos, desde Baires, JuanC
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar