Discussion:
Error 3464 no coinciden los tipos
(demasiado antiguo para responder)
Vicente
2003-11-05 11:29:59 UTC
Permalink
Me estoy volviendo loco con el error no coinciden los
tipos de esta expresión

Set rusu = CurrentDb.OpenRecordset("SELECT NombreCompleto
FROM Usu WHERE Cod = '" & ForEmpl & "' ")

el problema está en '" & ForEmpl & "', si sustituyo esto
por un nº funciona correctamente, si lo dejo para que lo
coja él me dá el error y lo curioso es que depurando situo
el ratón sobre esta variable y me dá el nº de antes
Búho
2003-11-05 11:35:13 UTC
Permalink
Me parece que la respuesta te la he enviado a tu correo, por error...me
equivoqué de ICONO al dar enviar...
decía....

Si COD es un campo numerico, quita las comilals dobles...
Set rusu = CurrentDb.OpenRecordset("SELECT NombreCompleto
FROM Usu WHERE Cod =" & ForEmpl )
--
Saludos desde Valladolid
Francisco Javier García Aguado
---
http://www.buho.tk
http://www.clikear.com/webs/accessbhuo/
http://groups.msn.com/Access2000VisualBasic/
---
Vicente
2003-11-05 11:52:04 UTC
Permalink
Ahora el error es Variable de objeto no establecido, y
sigue reconociendo que esa variable es igual al nº.
-----Mensaje original-----
Me parece que la respuesta te la he enviado a tu correo,
por error...me
equivoqué de ICONO al dar enviar...
decía....
Si COD es un campo numerico, quita las comilals dobles...
Set rusu = CurrentDb.OpenRecordset("SELECT NombreCompleto
FROM Usu WHERE Cod =" & ForEmpl )
--
Saludos desde Valladolid
Francisco Javier García Aguado
---
http://www.buho.tk
http://www.clikear.com/webs/accessbhuo/
http://groups.msn.com/Access2000VisualBasic/
---
.
Búho
2003-11-05 12:15:06 UTC
Permalink
Hola de nuevo Vicente.
¿Qué es la variable «ForEmpl» y de donde la coges?..¿Del propio formulario?

Entiendo que USU es el nombre de una tabla, que NombreCompleto y Cod son
campos de esa tabla, que Cod es numerico,que tienes activada DAO y que RUSU
es un recordset declarado como DAO.RECORDSET.
¿Es correcto esto que supongo?
--
Saludos desde Valladolid
Francisco Javier García Aguado
Vicente
2003-11-05 12:23:03 UTC
Permalink
Correcto todo lo que supones
forEmpl es un cuadro de texto del formulario
-----Mensaje original-----
Hola de nuevo Vicente.
¿Qué es la variable «ForEmpl» y de donde la coges?..¿Del
propio formulario?
Entiendo que USU es el nombre de una tabla, que
NombreCompleto y Cod son
campos de esa tabla, que Cod es numerico,que tienes
activada DAO y que RUSU
es un recordset declarado como DAO.RECORDSET.
¿Es correcto esto que supongo?
--
Saludos desde Valladolid
Francisco Javier García Aguado
.
Vicente
2003-11-05 12:38:50 UTC
Permalink
Perdoname, tu primera respuesta me servía perfectamente,
el otro error era de otra cosa.
Muchas gracias. Un saludo Vicente
-----Mensaje original-----
Correcto todo lo que supones
forEmpl es un cuadro de texto del formulario
-----Mensaje original-----
Hola de nuevo Vicente.
¿Qué es la variable «ForEmpl» y de donde la
coges?..¿Del
propio formulario?
Entiendo que USU es el nombre de una tabla, que
NombreCompleto y Cod son
campos de esa tabla, que Cod es numerico,que tienes
activada DAO y que RUSU
es un recordset declarado como DAO.RECORDSET.
¿Es correcto esto que supongo?
--
Saludos desde Valladolid
Francisco Javier García Aguado
.
.
Búho
2003-11-05 14:45:39 UTC
Permalink
OK, Vicente, me alegro de que todo esté bien. Es que este ultimo mensaje
tuyo se cruzó con el último mío.
--
Saludos desde Valladolid
Francisco Javier García Aguado
Búho
2003-11-05 12:42:16 UTC
Permalink
Pues Vicente, no te puedo ayudar más. Alguna de mis hipotesis que te he
puesto antes y que dices que todas son correctas, no se cumplen, seguro.

Vuelvo a recordartelas para que las revises, pues alguna de ellas, insisto,
no se está cumpliendo.

(A) Debes tener activada en el editor de VBA, en herramientas- Referencias,
la biblioteca de acceso a datos DAO 3.X (X segun la version de Access que
utilices)
(B) EL nombre de la tabla y los nombres de campo que pones son correctos.

(C) El nombre del campo ForEmpl existe y esta en el propio formulario

(C) Que el recordset RUSU le tienes declarado como
Dim Rusu As Dao.Recordset

Y hasta aquí llego yo...no me imagino que mas puede pasar para que te dé
error.....
--
Saludos desde Valladolid
Francisco Javier García Aguado
---
http://www.buho.tk
http://www.clikear.com/webs/accessbhuo/
http://groups.msn.com/Access2000VisualBasic/
---
Gracias por no enviarme preguntas a mi correo.
CarCar
2003-11-05 12:20:54 UTC
Permalink
Hola:

Esa sintaxis es de DAO, ¿tienes activada la librería de
DAO? Con el módulo abierto, ve al menú "Herramientas" -
"Referencias" y allí busca y marca "Microsoft DAO 3.XX
Object Library" y desmarca la "Microsoft Active Data
Object..." si es que no vas a utilizar ADO.

Saludos,
CarCar
MVP-Access
-----Mensaje original-----
Ahora el error es Variable de objeto no establecido, y
sigue reconociendo que esa variable es igual al nº.
-----Mensaje original-----
Me parece que la respuesta te la he enviado a tu correo,
por error...me
equivoqué de ICONO al dar enviar...
decía....
Si COD es un campo numerico, quita las comilals dobles...
Set rusu = CurrentDb.OpenRecordset("SELECT NombreCompleto
FROM Usu WHERE Cod =" & ForEmpl )
--
Saludos desde Valladolid
Francisco Javier García Aguado
---
http://www.buho.tk
http://www.clikear.com/webs/accessbhuo/
http://groups.msn.com/Access2000VisualBasic/
---
.
.
Vicente
2003-11-05 12:34:11 UTC
Permalink
Si, la tengo activada, en prioridad está por encima de ADO
de todas formas la variable la tengo declarada como:
Dim rusu As DAO.Recordset
-----Mensaje original-----
Esa sintaxis es de DAO, ¿tienes activada la librería de
DAO? Con el módulo abierto, ve al menú "Herramientas" -
"Referencias" y allí busca y marca "Microsoft DAO 3.XX
Object Library" y desmarca la "Microsoft Active Data
Object..." si es que no vas a utilizar ADO.
Saludos,
CarCar
MVP-Access
-----Mensaje original-----
Ahora el error es Variable de objeto no establecido, y
sigue reconociendo que esa variable es igual al nº.
-----Mensaje original-----
Me parece que la respuesta te la he enviado a tu
correo,
por error...me
equivoqué de ICONO al dar enviar...
decía....
Si COD es un campo numerico, quita las comilals
dobles...
Set rusu = CurrentDb.OpenRecordset("SELECT
NombreCompleto
FROM Usu WHERE Cod =" & ForEmpl )
--
Saludos desde Valladolid
Francisco Javier García Aguado
---
http://www.buho.tk
http://www.clikear.com/webs/accessbhuo/
http://groups.msn.com/Access2000VisualBasic/
---
.
.
.
Continúe leyendo en narkive:
Loading...