CAMPO CALCULADO DEPENDIENDO DE LOS VALORES DE OTROS CAMPOS

Qusiera tener un campo tipo formula la cual depende de los valores de otros campos. Me explico tengo en una tabla uncampo llamado final, y diez campos numericos desde n1,n2,..., n10. final=promedio de los campos n1 hasta n10 si estos campos tienen valores mayores que 10 y menores que 50, de lo contrario sera el promedio solamente de los campos que cumplan con esta condición, como puedo hacer esto, si alggien sabe le agradezco

se me olvidaba el usuario por medio de una rejilla alimenta los valores de n1...n10 y debe ver el resultado del campo final a medida que va ingresando los valores. gracias

A tu primera pregunta, el promedio se calcula tal cual:
Pero como tienes que comprobar los valores entre un rango debes usar CHOOSE():

#PROMEDIO = ( choose((#N1>10)&(#N1<50),#N1,0)+choose((#N2>10)&(#N2<50),#N2,0)+++++choose((#N10>10)&(#N10<50),#N10,0) ) / (( ((#N1>10)&(#N1<50))+((#N2>10)&(#N2<50))+++++((#N10>10)&(#N10<50)) ) | 1 )

(la formula es excesivamente larga asi que no la voy a escribir completa, pero no creo que tengas demasiado problema en terminarla)

A tu segunda pregunta, solo debes incluir una columna en la rejilla para mostrar el #PROMEDIO y se recalculara automaticamente

un saludo
José Luis
http://www.ascsl.com

gracias lo probaré creo que era lo que necesitaba

Como podría aplicar una función para lo siguete:

si el valor de un campo tiene un valormenora a 35 toma el valor malo; si el valor es >35 y menor < 45 tomar el valor "bueno" y si tiene un valor mayor a 45 excelente, y que se actualice tan pronto se le ingrese el valor al campo de condición

@sistemasitp

Función choose:
choose(condicion, datoSi, datoNo)

choose(#CAMPO<35,"malo",choose(#CAMPO>35 AND #CAMPO<45,"bueno",choose(#CAMPO>45,"excelente",)))

Por ejemplo.

Mil gracias su ayuda siempre tan precisa.

choose(#NL01<35,"M",choose(#NL01>35 & #NL01<45,"B","E"))

SI NL01 TOMA EL VALOR DE 47 DEBERIA DAR COMO RESULTADO E PERO DA COMO RESULTADO B PORQUÉ?

1. Te faltan los parentesis en la comprobacion de la condicion, y por eso el resultado no es correcto
2. ¿Que pasa si el valor es = 35? :(

un saludo
José Luis
http://www.ascsl.com

Prueba poniendo entre parentesis cuando das dos opciones al valor:

choose(#NL01<35,"M",choose((#NL01>35) & (#NL01<45),"B","E"))

Saludos ;)

Prueba con
choose(#NL01<35,"M",choose(#NL01>35 & #NL01<45,"B",choose(#NL01>45,"E",)))

EDITO:
Cierto, no había visto el "E" en la "negación" del segundo choose

Lo solucione así,

choose(#NL01<35,"M",choose( #NL01<45,"B","E"))

aunque queda el sinsabor. o depronto el choose no acepta validaciones con los operadores logigos?

Lamento contradecirte, pero si utilizas los parentesis, puedes utilizar los operadores logicos perfectamente en la condicion CHOOSE.

un saludo
José Luis
http://www.ascsl.com

Si acepta validaciones con los operadores logicos, pero si no pones entre parentesis los valores, tratara como parte de la condicion el operador logico, en este caso el &

Saludos ;)

Si funciona pero la dejare con las condiciones ya que estos acotan los volores como quiero:

<35 , <45 y el resto con esto abarcaría lasigualdades, mil gracias...

@Gegeo

2-0, jejeje

@Gegeo

2-0, jejeje

Mecachis :D