Access ordenar una tabla por un campo tipo cadena convertido a numero

Hola Tengo un formulario el cual se ordena por un campo tipo cadena. Lo que pasa es que los primeros caracteres suelen ser numéricos (tipo "123 / 1998"). Es por ello que para ordenarlos por el valor del número primero los convierto en número mediante ".... ORDER BY Val([tabla_leyes]!numero);". Esto funcionaba hasta el otro día en que me dio error de "No coinciden los tipos de datos en la expresión de criterio". Resulta que en antiguas copias de seguridad de la base de datos sigue funcionando bien. Copié el formulario viejo y lo sustituí en la base de datos y falla igual. Resulta que si hago una consulta sobre esa tabla con la misma instrucción SQL con la que se abre el formulario la consulta también falla. SALVO QUE QUITE EL ORDEN. Si en el diseño de consulta (Y en el formulario) le quito la cláusula "ORDER BY" funciona la conversión de tipos pero me arroja el error de "No coinciden los tipos" cuando intento ordenar el formulario por ese campo convertido a número.

No lo entiendo. Y menos si veo que la misma instrucción SQL funciona en viejas copias de seguridad. También haciendo una consulta de selección en la vieja copia de seguridad, ésta funciona bien. Y ya digo, da error cuando intento ordenar.

Las tablas son idénticas en ambas bases.

No sé por dónde andará el error. ¿Podéis echarme una mano o alguna idea? Estoy atascado.

Gracias

Añade tu respuesta

Haz clic para o