Añadir registro en access

Encontré el siguiente código en internet para añadir registro en un cuadro combinado, me en msgbox.
Private Sub Lista52_NotInList(NewData As String, Response As Integer)
Dim Db As DAO.Database
Dim Rs As DAO.Recordset
Dim Msg As String
Dim NewID As String
Dim UltimoElemento As String
On Error GoTo Err_Cuadro_Lista52_NotInList
If NewData = "" Then Exit Sub
Msg = "'" & NewData & "' No existe en la lista." & vbCr & vbCr
Msg = Msg & "Desea agregarlo?"
If MsgBox(Msg, vbQuestion + vbYesNo) = vbNo Then
Response = acDataErrContinue
Else
Set Db = CurrentDb
Set Rs = Db.OpenRecordset("Tipo", dbOpenDynaset)
Msg = " Escriba el siguiente numero " & Id_tipo + 1
NewID = InputBox(Msg)
Rs.FindFirst BuildCriteria("id_tipo", dbText, NewID)
Do Until Rs.NoMatch
NewID = InputBox("id_tipo " & NewID & " Ya existe." & _
vbCr & vbCr & Msg, NewID & " Ya existe ")
Rs.FindFirst BuildCriteria("id_tipo", dbText, NewID)
Loop
Rs.AddNew
Rs![Id_tipo] = NewID
Rs![Nombre_animal_esp] = NewData
Rs.Update
Response = acDataErrAdded
End If
Exit_Cuadro_Lista52_NotInList:
Exit Sub
Err_Cuadro_Lista52_NotInList:
MsgBox Err.Description
Response = acDataErrContinue
End Sub

Eso lo apliqué en un cuadro combinado en donde la tabla solo tiene dos campos.
Ahora, tengo otra tabla con 3 campos: Id_tipo, Nombre_animal_esp y Nombre_animal_ing.

Los coloqué en el formulario en un cuadro combinado Nombre_animal_esp, y el otro registro no está en el formulario.
Quiero hacer lo mismo, igual al código de arriba, que me permita desde ese cuadro combinado añadir ID, nombre_animal_esp y también el campo nombre_animal_ing.
El código de arriba solo sirve para uno para una tabla de dos campos y yo quiero uno para tres campos, y el último campo no aparece en el formulario.
Respuesta
1
El evento NotInList nos devuelve un solo argumento newdata que pertenece
al nuevo valor del campo que deseamos incorporar y que no se encuentra
en la tabla y que usas para asignar al campo "Nombre_animal_esp"
Te propongo substituir este trozo de código por el actual...
Rs. AddNew
Rs![Id_tipo] = NewID
Rs![Nombre_animal_esp] = NewData
Rs![Nombre_animal_ing]=Inputbox("Nombre_animal_ing ?")
Rs.Update
Nota:he observado algún error de código sin demasiada importancia en la variable Msg

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas