Como programar código para elegir entre dos opciones

Muchachos ustedes como siempre ayudándome muchas gracias de antemano

Bueno tengo un código que es el siguiente:

Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyInsert
Forms("Factura").Informe.SetFocus
Forms("Factura").Informe_Click
KeyCode = 0
Case vbKeyEnd
Forms("Factura").btn_agregar.SetFocus
Forms("Factura").btn_agregar_Click
KeyCode = 0
Forms("Factura").cliente.SetFocus
End Select
End Sub

Este código esta en un subformulario que esta en un formulario que se llama Factura este código me facilita el registrar los datos y a través de teclas del teclado pueda darle nuevo o mandarlo a imprimir el Formulario Factura tiene otro código que lo bloquea después de que se le da nuevo o informe de este modo impido que los vuelvan a modificar pero como aveces se cometen errores hay que modificarlo entonces que hice crear o copiar el formulario y ponerle en nombre de Editar factura donde solo yo soy el que lo puede modificar de acuerdo a los permisos que tengo en el formulario de permisos y quite los bloqueos esto para que solo yo pueda hacer esto y nadie más

El problema es que el código que les puse al principio esta en el subformulario y este es compartido por Factura y Editar Factura que pasa que el código me sirve en Factura pero No en Editar Factura quisiera saber si ha este código hay alguna forma de decirle evalúa si es factura o si es Editar Factura y ejecuta el código intente poner el código con los dos nombre pero al correr el código y no encontrar el formulario no continua y lanza el error espero me puedan ayudar

1 respuesta

Respuesta
2

Entre Private Sub... y lo demás ponle

If CurrentProject.AllForms("factura").IsLoaded Then

 luego vine todo el código de arriba

End if

No funciona pe puedes indicar que hace cada parte del código por favor

Simplemente que si está abierto el formulario facturas ejecute el código y si no está abierto no hace nada.

Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)

if currentproject.allforms("factura").isloadaed then
Select Case KeyCode
Case vbKeyInsert
Forms("Factura").Informe.SetFocus
Forms("Factura").Informe_Click
KeyCode = 0
Case vbKeyEnd
Forms("Factura").btn_agregar.SetFocus
Forms("Factura").btn_agregar_Click
KeyCode = 0
Forms("Factura").cliente.SetFocus
End Select

end if
End Sub

Icue gracias compañero pero ver que no me entendiste son dos formularios iguales pero uno se bloque al ingresar registros y el otro no porque ese lo uso para editar los dos tienen el mismo subformulario el cual tiene el código que puse al principio pero al tener distinto nombre el código sólo sirve en el formulario que se llama factura pero el otro que se llama editar factura no sirve porque produciría un error la idea es que el código sirva para los dos y compa de antemano muchas gracias por tu ayuda 

Vamos a ver, el código sirve para los dos formularios, pero todo depende de como trabajes con ellos, que es algo que no sé, Suponiendo que en el formulario Facturas, hayas puesto lo que te dije, te dejará meter, cambiar, etc., datos a cualquiera. En el caso del formulario Editar que quieres que sólo puedas entrar tu, puedes poner, en el evento Al abrir, o al cargar

If Environ("username") <> "hernan" Then
Form.AllowAdditions = no
Form.AllowDeletions = no
Form.AllowEdits = no
End If

Añade tu respuesta

Haz clic para o
El autor de la pregunta ya no la sigue por lo que es posible que no reciba tu respuesta.

Más respuestas relacionadas