Access - campo de tabla no coge valor

 
Vista:
sin imagen de perfil

campo de tabla no coge valor

Publicado por jose maria (89 intervenciones) el 18/06/2013 10:41:20
hola, tengo un formulario el cual tiene una casilla desplegable con cuatro opciones, me gustaria que al seleccionar la opcion A, un campo en una tabla asociada a este formulario coja el valor de false (no) y al seleccionar cualquiera de las demas coja valor de true (si).....
se me ocurrio este codigo (yo tampoco se mucho) pero no funciono.....

Private Sub nivel_w_BeforeUpdate(Cancel As Integer)
If Me.nivel_w = "No sabe" Then
word = False
Else
word = True
End If
End Sub

esto si funciona si tuviera una cailla de verificacion, ahora, yo deseo eliminar esta casilla y poner directamente el valor en la tabla
gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 2
Ha aumentado su posición en 8 puestos en Access (en relación al último mes)
Gráfica de Access

campo de tabla no coge valor

Publicado por Beni (23 intervenciones) el 19/06/2013 09:56:06
Hola Jose Maria:

Según entiendo, esto te funciona si el campo word es una casilla de verificación, no?

Si en ese formulario ya tienes como origen del registro la tabla en la cual quieres guardar los datos, tan solo tendrías que ir a las propiedades del control Me.word, y ponerle como 'origen del control' el campo que quieras que tome ese control. al salir del formulario guardando ya te guardaría esos datos.

Ejemplo:
Formulario --> Origen del registro: NombreTabla (la tabla sobre la que estás tratando los datos)
Control.Word --> Origen del control: WORD (suponiendo que en la tabla el campo se llame 'word')

Si no estás usando como origen del control la tabla sobre la que quieres guardar los datos, puedes guardar directamente esos datos usando un simple UPDATE sobre la tabla, o un recordset con un edit para modificar el valor.

Ejemplo (con UPDATE):
'Nota: Es mas correcto usar el evento _AfterUpdate. _BeforeUpdate es mas para verificar datos
Private Sub nivel_w_AfterUpdate()
If Me.nivel_w = "No sabe" Then
Currentdb.Execute "UPDATE FROM TABLA SET WORD=False WHERE ..."
Else
Currentdb.Execute "UPDATE FROM TABLA SET WORD=True WHERE ..."
End If
End Sub


como desconozco tu nivel, no se si la manera de explicarme la habrás entendido bien.
Espero te sirva. Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar