Sintaxis en vba para saber que botón está seleccionado

Fijate que tengo un problema, espero me puedas ayudar

Tengo mi proyecto sobre generar números de oficios, y elaboré un formulario como menú en el cual se ligan varios formularios, consultas, informes, tablas, etc., sin embargo en 2 de esos botones que son de registro, están restringidos los accesos a través de un login, es decir, que en el botón de agregar remitentes o en el de puestos están vinculados al formulario del login y quiero saber la sintaxis en vba para saber cual de los 2 botones seleccione en el menú para poner una condición en el login y darle acceso al formulario que corresponda una vez que sea comprobado el acceso.

Ejemplo

Crear plaza * (boton1)

[la selección de cualquiera de los 2 botones me lleva al formulario del login]

Agregar remitentes * (botón 2)

Login:

if botón1.seleccioado then

DoCmd. OpenForm "CREAR PLAZA"

Elseif boton2. Seleccionado then

DoCmd. OpenForm "AGREGAR REMITENTES"

Endif

1 Respuesta

Respuesta
1

- Inserta un módulo estándar en tu Access (ALT+F11 (se te abrirá el VBE) -> Menu insertar -> Módulo.

- Bajo las declaraciones "Option" escribe lo siguiente

...

Public elBoton as byte

...

- En el botón1, justo antes de abrir el formulario de login, añade la siguiente línea:

...

elBoton=1

...

- En el botón2, justo antes de abrir el formulario de login, añade la siguiente línea:

...

elBoton=2

...

- En el código del botón del formulario de login escribes lo siguiente:

...

Private Sub...

Select Case elBoton

Case 1

docmd.openform "Crear plaza"

Case 2

docmd.openform "Agregar remitentes"

Case Else

msgbox "La apertura del formulario de login ha sido atípica",vbInformation,"ATENCIÓN"

End select

End sub

...

Como comentario te diré que lo podrías hacer con un bloque IF... END IF, pero con el CASE ELSE te cubres las espaldas por si se accede al login sin pasar por los botones 1 y 2 (y, si es así, tendrías que revisar la sistemática de acceso a ese formulario, claro).

A ver si te sale.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas