Función Si con Y en access

Me podrían ayudar revisando esta fórmula que me genera error en un campo calculado que cree en una tabla de access.
SiInm((([GESTION]="DESOCUPADO") Y ([GESTION_REENVIO]="")),"PENDIENTE REENVIO",SiInm(([GESTION_REENVIO]<>""),[GESTION_REENVIO],[GESTION]))

Respuesta
2

Lina: Aparte de paréntesis que puedan sobrar>>

SiInm([Gestion]="Desocupado" Y [Gestion_Reenvio]="","Pendiente Reenvio",SiInm([Gestion_Reenvio]<>"",[Gestion_Reenvio],[Gestion]))

Puede que el error sea del separador. Estás usando "Coma" y si en tu configuración hay ";", puede que venga de ahí. Eso en cuanto a la Sintaxis. Otro tema es que el resultado sea o no el que esperas, ya que si por ejemplo en [Gestion_Reenvio] tienes "Nulos" en lugar de "", los Resultados no serán lo que esperas. Si fuera el caso de Nulos has de forzar lo que te devuelve el SiInm con Nz. Por ejemplo:

SiInm(Nz([Gestion_Reenvio];"")<>""

Un saludo >> Jacinto

Lina: Se me ha pasado comentarte que la última parte con el Nz debes usarlo en una consulta, porque de modo directo en tabla no te lo va a admitir en un campo calculado.

Otra cosa es que como Valor predeterminado de Gestion_Reenvio en la Tabla pongas "" y en Permitir Longitud Cero >> en Si. Un saludo >> Jacinto

2 respuestas más de otros expertos

Respuesta

Prueba de la siguiente manera.

SiInm([gestion]="desocupado" Y [gestion_reenvio]="","pendiente reenvio",SiInm([gestion_reenvio]<>"",[gestion_reenvio],[gestion]))

Cambie  a minúscula la letra  ya que no me dejaba responder así como lo tenias.

Respuesta

Considero que la fórmula en las partes que desea que se interprete que la celda en la columna esta en blanco para Access debería utilizar la función isnull() y escoger la columna para que access lo interprete correctamente so la fórmula seria:

 IIf([Gestion]="Desocupado" and IsNull([Gestion_Reenvio]),"Pendiente Reenvio")

Lo que debe tratar de hacer es cambiar (="") por IsNull(), dentro de su fórmula ya que access y excel son un poco diferentes en ese sentido.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas