Gracias a todos de nuevo, ya solucione mi problema (Bueno puse un parche como microsoft, je je), les cuento:
El problema era de comilla, al ser numerico debia meterlo como:
UPDATE TARIFAT41 SET precio ='" & precio & "' WHERE Id=1"
Pues si lo actualizaba asi:
UPDATE TARIFAT41 SET precio =" & precio & " WHERE Id=1"
Sin comillas simples,No me dejaba (el famoso error de tipo)
Siguiendo,Como vereis esta dentro de comillas simples para que me lo coga como numero porque sino me da error de tipo,pues bien cuando insertaba el nullo,es decir
precio="null" o precio=null (probe con todo) al estar entre las comillas simples me insertar 'null' y claro eso si que da error de tipo, la unica solucion era quitar las comillas simples, en este caso si que me dejaba insertar el nulo pero no me dejaba insertar numeros, asi que me cree mi propio Servipack 1( je,je).
Hice 2 funciones:;
1)Al insertar en mi BD cuando fuese nulo pues me insertase un 0 enla base de datos (para no tener el problema
2)Al recuperar el datoy mostralo al cliente pues al reves cuando me cogiera un 0 de la BD pues se lo mostraba como nulo
Y asi to resuelto por el momento, aunque me estoy carcomiendo por dentro, porque debe haber una forma de hacerlo bien y no con este parche.
Salud

s a todos.
P.D:Tetra mandame el codigo, cuando tenga un hueco lo miro. :(