Operación condicionada

Estoy en los últimos detalles de mi bd y tengo un problema por que como ya se no se puede divir por un numero equivalente a cero mi fórmula es:
=(Nz([Tratadas])+Nz([Solo dep inspeccionados])+Nz([Deshabitas]))/(Nz([Personal de Base])+Nz([Contrato Sesver])+Nz([Contrato Ayuntamiento]))
¿Y corre perfectamente pero necesito condicionarla a que si los datos por los que divide están igual a cero me traiga solo como respuesta un 0
entonces como quedaría mi fórmula? O mi condicionante no se como va ...
Espero pueda alguien ayudarme.
Atentamente.
Ero

1 Respuesta

Respuesta
1
Prueba esto:
=SiInm((Nz([Personal de Base])+Nz([Contrato Sesver])+Nz([Contrato Ayuntamiento]))=0;"0";(Nz([Tratadas])+Nz([Solo dep inspeccionados])+Nz([Deshabitas]))/(Nz([Personal de Base])+Nz([Contrato Sesver])+Nz([Contrato Ayuntamiento])))
Ok, muchas gracias estoy terminando de aprender acerca de las funciones condicionadas pero por otro lado estoy poniendo esta fórmula en el "Origen del control" (Access2007), pero no guarda el dato en la tabla y por otro lado intente generar la expresión en "Eventos" - "Después de actualizar" y la fórmula no hace nada.
Tendrá que ver con la la asignación desde la tabla el tipo de dato es numérico
No ando tan perdido pero ayudame para que termine de ubicarme
Gracias de antemano por la respuesta anterior y quedo pendiente para esta nueva respuesta
Atentamente.
hector rodriguez
Bien,
Para eso, create otro textbox, que el origen de datos sea el campo donde quieres guardar el valor.
Luego pon este textbox en Visible "No"
Y en el procedimiento del evento "al cambiar" del textbox que tiene la fórmula, le creas un código:
textboxnuevo.Value=textboxconformula.Value
Ok me queda claro que estoy igualando un texbox a otro, la primera parte la pase sin problema alguno pero...
El código lo genero en el textbox que tiene la formula y me queda así:
Option Compare Database
Private Sub Numero_de_Casas_Change()
texboxnuevo.Value = textboxconformula.Value
End Sub
Private Sub Texto161_Change()
End Sub
No creo estar haciéndolo bien por lo que solicito una vez más de tu ayuda.
Estoy cerca pero todavía no veo la luz... je je
Bien,
Deberias cambiar "texboxnuevo" y "textboxconformula" por los nombres reales de los textbox.
Si lo sospeche desde un principio y ahora lo modifique y quedo así pero no me asigna el dato al campo Numero de Casas y creo que es por que no estoy guardando bien el código una vez que lo escribo que es lo que debo de hacer para guardarlo.
Option Compare Database
Private Sub NumdeCasformula_Change()
Numero_de_Casas.Value = NumdeCasformula.Value
End Sub
Y que funcione correctamente
Por que lo único que hago después de escribirlo es ir a "Archivo" y luego seleccionar del menu la opción "Cerrar y volver a Microsoft Access"
¿Tengo algo más que hacer?
¿Me puedes decir la fórmula de NumdeCasformula?
La fórmula es:
=Nz([Tratadas])+Nz([No Tratadas])
Y la suma de esto es lo que se guarda en NumCasformula y de ahí quiero igualar en Numero de Casas
Y como lo guardas en NumCasformula
Estoy poniendo la fórmula en el origen de control y me da el resultado no se guarda el dato en ningún campo de la tabla y lo que quiero es guardarlo, se me hace muy lógico la indicación que me diste de igualar los cuadros de textos para que pueda guardar el resultado de NumCasformula en Numero de Casas poniendo en este ultimo en el origen de control el campo a donde quiero guardarlo en la tabla.
Sin embargo no he podido hacerlo genere el código como me indicaste pero simplemente no realiza la función
NumCasformula si hace la indicación de la fórmula y genera la suma
=Nz([Tratadas])+Nz([No Tratadas])
y el codigo lo realize asi:
Private Sub NumdeCasformula_Change()
Numero_de_Casas.Value = NumdeCasformula.Value
End Sub
Pero hay algo que no estoy haciendo bien y no se que es, de antemano gracias por todas tus atenciones.
Estoy en contact
Bien,
Ve a "al perder enfoque" de Tratadas y de NoTratadas y le pones el código siguiente
Numero_de_Casas.Value = Tratadas.Value + No_Tratadas.Value
Y me dices que tal

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas