¿Cuadro Combinado independiente que al seleccionar.. Me guarde el dato en el campo de la tabla?

Tengo una tabla que ilustro a continuación

Respuesta
1

Efectivamente no necesita un campo adicional, para esto se programar el evento Al no estar en la lista, pero en cuadro combinado en propiedades debe tener "Limitar a la lista" en Sí.

Código del evento al no estar en la lista.

Private Sub cboEmpleado_NotInList(NewData As String, Response As Integer)
 Dim intReply As Integer
       intReply = MsgBox("El Cliente'" & NewData & _
       "' no está en la lista, quiere adiconarlo ?", vbYesNo, "Registrando Venta")
       If intReply = vbYes Then
          'Abre el formulario frmClientes pasando los nuevos
          'datos en el paramétro OpenArgs
          DoCmd.OpenForm "frmClientes", , , , acFormAdd, acDialog, NewData
          'Registro añadido cancelamos el procedemiento predeterminado de Acces
          Response = acDataErrAdded
       Else
          MsgBox "Por favor seleccione un Cliente de la lista", vbInformation, "Registrando Venta"
          'Tratamos el error y decimos a Access que continue
          Response = acDataErrContinue
       End If
End Sub

Reemplace el nombre "frmClientes" por el nombre del formulario donde registra propietarios.

2 respuestas más de otros expertos

Respuesta
1

Isabel, no necesitas ese cuadro de texto. Para eso el combinado tiene un Evento Al no estar en lista.

Si quieres, como tengo tu email, dímelo y te mando un ejemplo.

Si te agradezco

Enviado ejemplo, con dos posibilidades

Respuesta
1

La propiedad 'al no estar en la lista' -si mis recuerdos no me engañan- depende de que la opción 'limitar a lista' este activada, por lo que en al menos ese combo se le tendría que activar.

Lo clásico es que se abra un formulario emergente y modal (para crear el nuevo registro) se le añada a la tabla y tras ello se regenere el contenido del combo.
Como se conoce cuál es el 'el nuevo elemento', tras el refresco del combo se selecciona al ítem recién creado y se continua con el resto de los procesos.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas