Sustituir valor en una tabla por valor de variable.

A todo el foro. Deseo ayuda dado mis escasos conocimientos en vba access

Tabla "Usuarios": con dos campos, uno de ellos incluiría el nombre del usuario y el otro un código.

UsuariosNombre: Rafa, Pepe, Toni, Juan, ...

UsuariosCodigo: 123, 567, 890, abc, ...

Formulario "CambioCodigo" (independiente):

FormCodigo01 (independiente)

FormCodigo02 (independiente)

Hace una búsqueda y comprueba que son iguales los dos. Lo que deseo es que al pulsar un botón me actualice el valor del campo UsuariosCodigo de la tabla Usuarios por el valor del formulario bien FormCodigo01 o FormCodigo02 que serían iguales.

Respuesta
2

Es de suponer que el formulario CambioCodigo tendrás algún control que identifique a que usuario vas a cambiarle el código. Vamos a suponer que ese control, sea cuadro de texto, sea combinado, etc se llama Usuario. En el evento Después de actualizar de ambos cuadros de texto( por si escribes en uno y en otro no) pondría

Dim respuesta as byte

Respuesta=msgbox("¿Está seguro de querer cambiarlo?",vbyexno + vbquestion,"Luego no quiero quejas")

if respuesta=vbyes then

docmd.runsql"update usuarios set codigo ='" & me.formcodigo01 & "' where usuario='" & me.usuario & "'"

else

exit sub

end if

Lo mismo en el formcodigo2 cambiando el nombre del cuadro de texto.

Me explico. Cuando hayas escrito algo en Formcodigo1, te aparece una ventana con la pregunta de si estás seguro. Si le dices sí te actualiza el campo código en la tabla Usuarios en el registro en que el nombre de usuario que aparezca sea igual al que tienes en el formulario Cambio Código.

Si le dices que no no hace nada.

1 respuesta más de otro experto

Respuesta
1

No sé cómo en campo que hace referencia al usuario, si es el nombre o el número. De todas maneras esto se hace con algo como:

Currentdb.Execute "UPDATE Usuarios SET UsuariosCodigo=" & Me.nombrecampoForm & " WHERE UsuriosNombre='" & Me.nombreusuario & "'"

Esto es una aproximación porque no sé que tipo de campo "UsuriosCodigo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas