Funcion SiInm - Eliminar error division por cero

Tengo una consulta en Access en la cual realizo un cálculo dividiendo dos campos entre sí para sacar un porcentaje de consumo. El tema aquí es que cuando el campo que uso como denominador de la división es igual a cero, lógicamente el sistema me tira #Error en la consulta. Pensé en solucionarlo como lo suelo hacer en Excel con una función SI o IF, en la cual si el campo del denominador es cero me devuelva el valor cero, y sino que realice el calculo, pero cuando cargo la expresión me da error en todas las filas de la consulta. Estoy usando la función SiInm y la expresión que use es la siguiente: SiInm([Resumen Costeo]! [Monto presupuestado]=0;0;[Resumen Costeo]! [SumaDeMonto final]/[Resumen Costeo]![Monto presupuestado]). Desde ya muchas gracias por la ayuda!
1

1 respuesta

1
Respuesta de
La expresión que indicas parece correcta.
Lo único que se me ocurre es que no tengas un valor 0 sino un nulo.
Si fuera ese el error, se solucionaría usando la función 'nz()'. La expresión quedaría así:
SiInm(nz([Resumen Costeo]![Monto presupuestado];0)=0;0;[Resumen Costeo]![SumaDeMonto final]/nz([Resumen Costeo]![Monto presupuestado];0))
Pruébalo. Espero que te sirva.
Un saludo
Con eso funciono perfecto! Muchas gracias!
La otra forma que encontré para solucionarlo en base a lo que me dijiste, fue modificando la tabla de origen de los datos. El campo Monto Presupuestado no estaba como Número o Moneda, sino como texto, por eso tenía valores nulos y no cero.
Con la expresión tal como me la pasaste funcionó bárbaro sin modificar nada, y sino con la misma expresión de antes pero modificando el tipo de datos del campo.
Muchas gracias!
Saludos...
Añade un comentario a esta respuesta
Añade tu respuesta
Haz clic para o
Escribe tu mensaje
¿No es la respuesta que estabas buscando? Puedes explorar otras preguntas del tema Microsoft Access o hacer tu propia pregunta: