Evento "Al no estar en lista" de un combo

Tengo un formulario con un combo de selección, al seleccionar un dato del combo aparece su registro en en formulario, al ingresar un dato que no esta en el combo he utilizado el evento "Al no estar en la lista" y le he ingresado este código

Private Sub Elegir_NotInList(NewData As String, Response As Integer)
Dim alumnonuevo As Integer, título As String, mensaje As Integer

título = "El alumno que ha escrito no está en la lista"
mensaje = vbYesNo + vbDefaultButton1
alumnonuevo = MsgBox("¿Desea agregar este alumno a la lista ?", mensaje, título)
If alumnonuevo = vbYes Then
DoCmd.RunCommand acCmdUndo

DoCmd.OpenForm "FAlumnos", acNormal, "", "", acAdd, acDialog

Response = acDataErrAdded
End If
End Sub

El problema es que después de agregar el Alumno nuevo necesito que aparezca disponible su numero de cuenta en el combo y por consiguiente sus datos en el formulario inicial, lo cual no hace, graba el nuevo alumno pero al regresar al combo aparece la nueva cuenta pero no me trae el registro del alumno

¿Hay Algo que me haga falta agregar?

Respuesta
2

Emily, no sé porqué, ese código me suena.

En el combinado te aparecerá el nuevo código del alumno. Si quieres que te rellene los demás datos, en el evento después de actualizar del combinado puedes poner

Nombre=dlookup("nombrealumno","alumnos","código=" & elegir &"")

apellidos=Dlookup("apellidos",.........

Suponiendo que código sea numérico, si fuera texto

'" & me.elegir & "'")

1 respuesta más de otro experto

Respuesta
2

Tienes que reestructura todo tu código, porque en ningún momento le dices que te guarde el nuevo dato, es más, le dices que deshaga los cambios (con el acCmdUndo)...

Este fin de semana, Neckkito publicó en su web un ejemplo que te viene al dedillo:

http://siliconproject.com.ar/neckkito/index.php/ejemplos-explicados/controles/96-ejemplos-explicados/ejemplos-de-controles/335-un-poco-mas-alla-del-not-in-list 

Un saludo.


Añade tu respuesta

Haz clic para o

Más respuestas relacionadas