Cuadros combinados

Tengo un formulario que da entrada de datos a una tabla. Uno de los cuadros combinados del formulario (de nombre 06 Precios) está compuesto de más de una columna (núm de alumnos, tipo de clase y euros) y me traslada los datos una de las columnas (euros) a la tabla, pero me gustaría que, simultáneamente, me almacenara otros datos de otras columnas ( tipo de clase y núm de algunos). He buscado información sobre esto y he probado algunas cosas pero no consigo resolver la cuestión. Agradecería una ayudita. Gracias

1 Respuesta

Respuesta
1
En primer lugar indicarte que no veo que tu tabla tenga una clave única que identifique el registro. Eso es algo en lo que siempre insisto mucho cuando explico temas de diseño.
Supongamos que tu tabla tiene un identificador único (pongamos el campo numDeAlumnos).
En este caso, lo que yo haría sería tener otros 2 campos (textbox) que no sean visibles al usuario y que estén asignados a los otros campos que quieres guardar (tipo de clase, euros).
Cuando cambie el contenido del cuadro combinado sólo tienes que actualizarlos con un código de este estilo:
Private Sub miCuadroCombinado_Change()
    If Me.miCuadroCombinado.Text = "" Then
        Me.tipoClase.Value = ""
        Me.euros.Value = ""
      Else
        Me.tipoClase.Value = Nz(DLookup("tipoClase", "Precios", "numDeAlumnos=" & Me.miCuadroCombinado.Text), "")
        Me.euros.Value = Nz(DLookup("euros", "Precios", "numDeAlumnos=" & Me.miCuadroCombinado.Text), "")
    End If
End Sub
Hola Santiago:
Gracias por tu pronta respuesta. Estoy probando lo que me dices pero no consigo que funcione el código y creo que debe ser por algunos errores de bulto que he cometido desde el principio al crear la base de datos (como que campos que se introducen en la tabla desde el formulario no tengan el mismo nombre en un sitio y en otro). Voy a hacer un par de correcciones y vuelvo a abusar de tu generoso conocimiento.
Gracias
Un detalle:
Si el campo clave (en el ejemplo he puesto 'numDeAlumnos') es de tipo texto, entonces tendrías que poner lo siguiente:
Me.tipoClase.Value = Nz(DLookup("tipoClase", "Precios", "numDeAlumnos='" & Me.miCuadroCombinado.Text & "'"), "")
        Me.euros.Value = Nz(DLookup("euros", "Precios", "numDeAlumnos='" & Me.miCuadroCombinado.Text) & "'", "")
Si se trata de un campo numérico con lo que te puse antes es suficiente.
El campo clave es numérico, no hay problema. Sigo...
Sigue probando.
Si sigues con problemas el lunes, me lo dices y me mandas la base de datos por correo. Supongo que el lunes por la tarde la podría echar un vistazo y decirte qué ocurre.
No me respondas a este mensaje porque sino me queda como una consulta pendiente.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas