Seleccionar un tercero para editarlo y hacerle correcciones

Señores buenos días. Dios los bendiga. Mi pregunta es la siguiente. Tengo un formulario para editar y corregir a los terceros llamado FrmTerceros. En la parte superior (Encabezado) del formulario tengo un cuadro combinado llamado CmbIdte donde selecciono el tercero a editar, en la parte de detalles tengo los textbox que relleno de acuerdo al id del tercero seleccionado en el cuadro combinado, esto lo hago con la función Dlookup así: Me.TxtFecha = DLookup("Fecha", "Terceros", "Idte = " & Me. CmbIdte). Cabe decirles que los campos que se rellenan con la información son independientes. Hasta aquí todo bien. El problema se presenta cuando ya tengo el tercero seleccionado y presiono el botón guardar, en vez de corregir los cambios me crea otro tercero. Lo que no se es como buscar el id del tercero en la tabla tercero y que se pare ahí para que realice los cambios propuestos. Les anexo el código Vba que utilizo para ver en que estoy fallando.

Aquí en esta instrucción es donde creo estoy fallando para seleccionar el Idte y hacerle los cambios propuestos.

    DLookup("Idte", "Terceros", "Idte = " & Me.CmbIdte)

        With RsTerceros

            .Edit

            !Fecha = Me.TxtFecha

            !Idco = Me.CmbIdco

            !Idta = Me.CmbIdta

            !Cedula = Me.TxtCedula

            !Tercero = Me.TxtTercero

            !Direccion = Me.TxtDireccion

            !Email = Me.TxtEmail

            !Telefono = Me.TxtTelefono

            .Update

        End With

Agradezco inmensamente a la persona que me pueda ayudar.

Eder Monterroza

1 respuesta

Respuesta
1

Lo primero, para saber si ese código está bien o no sería saber cómo y sobre qué abres el recordset. Si lo haces ya sobre el registro a modificar, el código es correcto y no te tendria que añadir un nuevo registro. Como dices que no lo hace, es de suponer que el recordset no lo abres como debes...

Si no te quieres complicar mucho, usa una SQL de actualización:

CurrentDb.Execute "UPDATE TuTabla SET Fecha=#" & Me.TxtFecha & "#, Idco=" & Me.CmbIdco & "," & .... & " WHERE Idte=" & Me.CmbIdte

Ten en cuenta usar la sintaxis adecuada al tipo de datos en cada caso, y no te olvides de la cláusula where, sino te actualizará todos los registros con esos datos...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas