Access - utilizacion then goto

 
Vista:
sin imagen de perfil

utilizacion then goto

Publicado por jose maria (89 intervenciones) el 26/07/2013 09:06:35
hola, estoy intentando comprender y utilizar el then goto......
no tengo muy claro, ¿se podria utilizar dentro de un
Private Sub Texto_KeyPress(KeyAscii As Integer)

¿como seria su utilizacion?, no crearia conflictos los dos end sub (el del private y la rutina del goto)
espero explicarme bien ya que no lo entendi mucho......
gracias
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 Neckkito
Val: 529
Plata
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

utilizacion then goto

Publicado por Neckkito (1157 intervenciones) el 26/07/2013 11:16:32
Hola!

Usualmente el then goto se utiliza para dirigirse a una etiqueta dentro del mismo procedimiento. Si quieres llamar a otro procedimiento utiliza la llamada a dicho segundo procedimiento.

Las etiquetas se definen por su nombre seguido de dos puntos (:)

Por ejemplo, imaginemos estos dos códigos banales:

...
Private sub muestroMsg()
Const elNum as byte = 1
If elNum=0 then
goto numCero
else
msgbox "El número es " & elNum
Call finMensaje
End if
Exit sub
numCero:
msgbox "El número no es 1"
Exit sub

Private Sub finMensaje()
msgbox "Y aquí se acaba todo"
End sub
...

Como ves, si el número es 1 se ejecuta el Else del If, que a su vez llama a un segundo procedimiento a través de Call finMensaje. Y el código se acaba en el Exit Sub (no "sigue" más abajo).

Pero si el número fuera cero se hace una llamada a la etiqueta numCero, que sirve para mostrar otro mensaje. En este caso, con el then goto, se "salta" a otra línea de código, pero dentro del mismo procedimiento.

Si te creas un módulo y copias los procedimientos basta con que cambies la línea
Const elNum as byte = 1
por
Const elNum as byte = 0
Para que veas la "reacción del código".

Espero que te sirva.

Saludos,

http://neckkito.siliconproject.com.ar
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
sin imagen de perfil

utilizacion then goto

Publicado por jose maria (89 intervenciones) el 26/07/2013 13:37:20
si, me sirve, una cosa, el exit sub, digamos que termina tambien el primer procedimiento ¿verdad?
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 Neckkito
Val: 529
Plata
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

utilizacion then goto

Publicado por Neckkito (1157 intervenciones) el 26/07/2013 13:57:29
Hola!

Si no pusieras el exit sub el código continuaria ejecutándose, en cuyo caso tendrías, suponiendo elNum=1, la siguiente secuencia:

1.- Inicio de código
2.- Discriminación del IF
3.- MENSAJE EN PANTALLA: "El número es 1"
4.- Llamada al procedimiento finMensaje
5.- MENSAJE EN PANTALLA: "Y aquí se acaba todo"
6.- Vuelta al código original. No encuentra el Exit sub y sigue ejecutándose
7.- MENSAJE EN PANTALLA: "El número no es 1"
8.- Se encuentra con el End Sub y se finaliza el código.

Saludos,

Neckkito
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
sin imagen de perfil

utilizacion then goto

Publicado por jose maria (89 intervenciones) el 26/07/2013 15:06:23
entendido, gracias
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