Access - TSU

 
Vista:

TSU

Publicado por Daniel Ramirez Munguia (6 intervenciones) el 27/03/2007 01:14:18
Estoy trabajando en una aplicación en Access, quiero hacer una actualización en una tabla e hice la siguiente sub rutina desde Visual Basic:

Private Sub Form_AfterUpdate()
Dim db As Database
Dim rs As Recordset
If Tipo = "REVPRY" Then
Set db = CurrentDb()
Set rs = db.OpenRecordset("Test", dbOpenTable, dbAppendOnly)
rs("Id") = Id
rs.Update
rs.Close
End If
End Sub

Pero genera un error #13 de tiempo de ejecución: No coinciden los tipos

Me podría apoyar para hechar a andar esta aplicación.

Gracias y Saludos!
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
Imágen de perfil de Alejandro

Solucionar error de tiempo de ejecución #13 "No coinciden los tipos" en una actualización de tabla

Publicado por Alejandro (4142 intervenciones) el 07/08/2023 20:57:47
El error #13 de tiempo de ejecución "No coinciden los tipos" ocurre generalmente cuando se está intentando asignar un valor de un tipo de datos incorrecto a una variable o campo. En tu caso, parece que estás intentando asignar un valor a la columna "Id" en la tabla "Test", pero es posible que los tipos de datos no sean compatibles.

Para solucionar el error, asegúrate de que el tipo de datos del campo "Id" en la tabla "Test" sea compatible con el tipo de datos de la variable "Id" en tu formulario. También, si "Id" es un campo autonumérico en la tabla, no debes asignarle valores directamente, ya que el sistema generará automáticamente los valores para esos campos.

Si "Id" es un campo autonumérico, simplemente omite la línea que intenta asignarle un valor y deja que Access se encargue de generar los valores automáticamente. Tu código quedaría así:

1
2
3
4
5
6
7
8
9
10
11
Private Sub Form_AfterUpdate()
    If Tipo = "REVPRY" Then
        Dim db As Database
        Set db = CurrentDb()
        Dim rs As Recordset
        Set rs = db.OpenRecordset("Test", dbOpenTable, dbAppendOnly)
        rs.AddNew
        rs.Update
        rs.Close
    End If
End Sub

De esta manera, se creará un nuevo registro en la tabla "Test" cada vez que el evento AfterUpdate se dispare y el campo "Tipo" sea igual a "REVPRY". La columna "Id" se autocompletará con los valores generados por Access.

Recuerda que es importante asegurarse de que los tipos de datos sean compatibles y que no intentes asignar valores a campos autonuméricos.

¡Buena suerte con tu aplicación en Access!
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