¿Qué esta mal en esta función de Access?

[quote]

gente del foro estoy tratando de usar una función condicional en access pero siempre me arroja este error "La expresión que ha especificado tiene un numero no válido". Aquí les dejo la función SiInm([Abono]<1,0,[Abono]-[Monto del credito]) lo que deseo es que si el campo abono es 0 el nuevo campo sea 0 sino que sea el resultado de abono-

1 Respuesta

Respuesta
2

A priori la sintaxis es correcta, pero habría que ver si en tu ordenador usas la coma (,) o el punto y coma (;) como separador (con lo que la expresión sería: SiInm([Abono]<1;0;[Abono]-[Monto del credito])), si el campo Abono lo has definido como texto en la tabla, dónde estás usando esa expresión (cuadro de texto o consulta...)

Saludos


Es un campo calculado de una tabla que debería ser 0 si en el campo abono no hay nada o sino que reste el abono del monto, intente con el( ;) pero no lo toma, la (,) si aunque en excel con la función si() el separador es el (;)

Que en un campo no haya nada no quiere decir que el valor sea 0.

Como en una tabla no puedes usar la función Nz() ara convertir nulos a otro valor, probé estas alternativas y ambas funcionan:

1º/ Poner como "Valor predeterminado" del campo "Abono: 0 y dejar la expresión como la tienes

2º/ Poner como "Valor predeterminado" del campo "Abono: 0 y usar esta otra expresión:

SiInm([Abono]=0,0,[Abono]-[Monto del credito])

3º/ Verificar si hay nulo en Abono, con:

SiInm(EsNulo([Abono]),0,[Abono]-[Monto del credito])

4º/ Comprobar los dos extremos:

SiInm(EsNulo([Abono]) O [Abono]=0,0,[Abono]-[Monto del credito])

Un saludo.


Añade tu respuesta

Haz clic para o

Más respuestas relacionadas