Imprimir página | Cerrar ventana

Error en Expresion (Incorrecta)

Impreso de: Foro de Access y VBA
Categoría: Access y VBA
Nombre del foro: Access y VBA
Descripción del foro: Foro de programacion en Access (Con código y sin código)
URL: http://www.mvp-access.com/foro/forum_posts.asp?TID=84845
Fecha de impresión: 27/Marzo/2026 a las 02:09


Tema: Error en Expresion (Incorrecta)
Publicado por: Erick Gamer
Asunto: Error en Expresion (Incorrecta)
Fecha de publicación: 21/Noviembre/2019 a las 19:32
Que tal a todos,

Tengo muchas expresiones en una consulta, he realizado el metodo "Benedictino" que algunas veces me ha mencionado el Sr. Mihura y he encontrado el error en esta expresión.

Dobletes: Left([Dobles A],8) & " " & Mid([Dobles A],9,Len([Dobles A])-8)

Ese campo "Dobles A" puede o no contener valores, si no tiene valor no es nulo es decir tiene un espacio en el campo (nunca es nulo)

Cabe mencionar que esa Expresion ha funcionado por años en la base de datos que manejo, pero ahora me marca el error mostrado en la imagen. 

Estoy tratando de solucionar el error evaluando con un IIF si la longitud del campo es 0 entonces omite la funcion si no ejecutala pero me marca el mismo error.
Esta es la consulta con la que pretendo evaluar:
Expr1: IIf(Len([MiTabla].[Dobles A])=0,"",Left([Dobles A],8) & " " & Mid([Dobles A],9,Len([Dobles A])-8))

Entonces, no se si alguna actualizacion de Windows o Access me este haciendo falta, como repito me la funcion me ha funcionado de maravilla por años pero ahora esta aferrada a no correr.

Algunos otros bugs que me ha ocasionado errores cuando se cierra access me lanza un error que antes tampoco me arrojaba, al igual que un recordset me esta cascando y he tenido que descativarlo para empezar a evaluar el error.

Tengo Windows 2010 con Office 365 pero la version de la base de datos la tengo en Access 97-2003 .mdb

Otra cosa, al tener muchas expresiones en la consulta hay alguna forma, metodo o funcion para detectar cual de todas las expresiones es la que esta cascando el trabajo? Ya que realmente tengo que ir reconstruyendo una a una hasta encontrar cual es la que falla.

Espero puedan ayudarme si es una actualizacion de Windows o Access o como atacar el error de la expresion.


Error al cerrar:


Erick Gamer


-------------
Aprendiz de todos, maestro de nadie.



Respuestas:
Publicado por: Mihura
Fecha de publicación: 21/Noviembre/2019 a las 20:50
Ponle un Nz al campo para asegurarte de que lleva algo ...

Nz([Dobles A], "")


-------------
Jesús Mansilla Castells.
Saludos desde Móstoles.

http://www.accessaplicaciones.com" rel="nofollow - Access Aplicaciones
http://www.tecsys.es" rel="nofollow - Tecsys.es


Publicado por: Erick Gamer
Fecha de publicación: 21/Noviembre/2019 a las 23:11
Hola Sr Mihura, me tira el mismo error:
IIf(Nz([Dobles A]),"",Left([Dobles A],8) & " " & Mid([Dobles A],9,Len([Dobles A])-8))

Erick Gamer





-------------
Aprendiz de todos, maestro de nadie.


Publicado por: Mihura
Fecha de publicación: 22/Noviembre/2019 a las 09:20
Eso que has escrito está mal construido ....

Para entender lo que estás escribiendo lo mejor seria que usaras el generador de expresiones y fueras rellenando valor a valor.

IIf(Condicion, ValorVerdadero, ValorFalso)

donde Condicion:
                             Nz([Dobles A],"") = ""

Ten en cuenta que dependiendo del entorno las , pueden ser ;

Repito, hazlo con el generador de expresiones, empieza con la expresión más simple y ya la irás complicando.



-------------
Jesús Mansilla Castells.
Saludos desde Móstoles.

http://www.accessaplicaciones.com" rel="nofollow - Access Aplicaciones
http://www.tecsys.es" rel="nofollow - Tecsys.es


Publicado por: Erick Gamer
Fecha de publicación: 23/Noviembre/2019 a las 03:50
Creo lo he logrado aquí esta la función modificada:

Expresion: IIf(Nz([MiTabla.[Dobles A],"")="","",Left([Dobles A],8) & " " & Mid([Dobles A],9,Len([Dobles A])-8))

Que opinan o estoy herrando algo? Si todo esta bien pueden cerrar el hilo, caso contrario favor de hacérmelo saber.

Erick Gamer



-------------
Aprendiz de todos, maestro de nadie.


Publicado por: Mihura
Fecha de publicación: 23/Noviembre/2019 a las 10:00
Si te funciona es que estará bien ... LOL

-------------
Jesús Mansilla Castells.
Saludos desde Móstoles.

http://www.accessaplicaciones.com" rel="nofollow - Access Aplicaciones
http://www.tecsys.es" rel="nofollow - Tecsys.es



Imprimir página | Cerrar ventana