MS Access 2003 - testo calcolo casella in un modulo
-
20-09-2019 - |
Domanda
Diciamo che ho due caselle di testo su un modulo. la prima restituisce un valore di conteggio da un'istruzione SQL, o di un dominio espressione di aggregazione, ecc il secondo fa lo stesso con parametri aggiuntivi.
Ora voglio avere un'altra casella di testo (# 3) che divide uno per l'altro per una percentuale molto semplice. così per un controllo:
=[textbox2]/[textbox1]
questa grande opera a meno che il valore contato originale restituito è uno zero. Se il primo valore restituito è uno zero, poi la seconda sta per essere uno zero troppo, e idealmente 0/0 dovrebbe uscire a zero, ma ottengo un errore # NUM! stringa di errore nella casella di testo.
Mi rendo conto che questo è l'ennesimo richiesta strano, ma questo è per una forma dashboard che ha circa 50 di questi, e funzionano grande, a meno che non mi ha colpito uno zero.
Quindi non v'è un modo per impostare le proprietà della casella di testo che io possa essere a conoscenza, per far funzionare tutto questo senza dover scrivere numerosi Se le dichiarazioni nel codice?
Grazie!
Soluzione
Non riesco a vedere come si può evitare di un'istruzione if quando divisione per zero è una possibilità
=IIf(TextBox1<>0, TextBox2/TextBox1,"N/A")
Altri suggerimenti
Matematicamente, la divisione per 0 non è definita, ma per i vostri scopi, si può calcolare con:
=IIf([textbox1]<>0;[textbox2]/[textbox1];IIf([textbox2]=0;0;"N/A"))
Questa è, quando TextBox1 è uguale a 0, si controlla se TextBox2 è uguale a 0. Se questo è il caso, per poi tornare 0, che è ciò che si desidera.