Ciao,
in un campo di una form ho bisogno di imporre una maschera di input che consente l'immissione di un numero qualsiasi, ma con la limitazione di 2 decimali.
Come devo impostare la maschera di input per mettere questo blocco?
Grazie
Ciao,
in un campo di una form ho bisogno di imporre una maschera di input che consente l'immissione di un numero qualsiasi, ma con la limitazione di 2 decimali.
Come devo impostare la maschera di input per mettere questo blocco?
Grazie
Nessun aiuto?
Provo a porre la questione in modo diverso (che poi è quello che realmente mi serve):
Ho bisogno di impostare a codice una condizione IF.
esempio:
IF in quel campo c'è un numero con 2 decimali THEN esegui una determinata azione
IF in quel campo c'è un numero con più di 2 decimali THEN esegui una determinata azione
Come posso scrivere questa condizione?
Grazie
In base al numero di cifre decimali restituite dalla funzione applichi la tua condizione.codice:Function decimali(numero As Double) If InStr(numero, ",") = 0 Then decimali = 0 Else decimali = Len(Split(numero, ",")(1)) End If End Function
Grazie, ma mon ho capito benissimo com e usarla...Originariamente inviato da nicola75ss
In base al numero di cifre decimali restituite dalla funzione applichi la tua condizione.codice:Function decimali(numero As Double) If InStr(numero, ",") = 0 Then decimali = 0 Else decimali = Len(Split(numero, ",")(1)) End If End Function
Dopo il primo Then al posto di "decimali = 0" devo inserire l'azione?
Mi spieghi dopo ELSE cosa significa quella riga? Come faccio a specificare la condizione dei 2 decimali? (es. IF i decimali sono 2)
Grazie
No. La funzione la lasci così com'è.Originariamente inviato da alexxxb
Grazie, ma mon ho capito benissimo com e usarla...
Dopo il primo Then al posto di "decimali = 0" devo inserire l'azione?
Mi spieghi dopo ELSE cosa significa quella riga? Come faccio a specificare la condizione dei 2 decimali? (es. IF i decimali sono 2)
Grazie
La riga dopo l'else semplicemente usa la funzione split per separare la parte intera da quella decimale in base al carattere separatore (,"). Tramite l'indice (1) ricavi la parte decimale e su questa, con la funzione len, la lunghezza della stringa, cioè il numero di cifre decimali.
Quindi quando ti occorre non fai altro che richiamarla come qualsiasi altra funzione di access.
iif(decimali(nome_campo)=0,...... )
Cioè per verificare la condizione dei 2 decimali dovrei scrivere così?Originariamente inviato da nicola75ss
No. La funzione la lasci così com'è.
La riga dopo l'else semplicemente usa la funzione split per separare la parte intera da quella decimale in base al carattere separatore (,"). Tramite l'indice (1) ricavi la parte decimale e su questa, con la funzione len, la lunghezza della stringa, cioè il numero di cifre decimali.
Quindi quando ti occorre non fai altro che richiamarla come qualsiasi altra funzione di access.
iif(decimali(nome_campo)=0,...... )
iif(decimali(nome_campo)=2)
Così non mi funziona...
Non riesco a capire come scrivere la condizione dei 2 decimali nella stringa
iif(decimali(nome_campo)=0,...... )
L'iif ha una sua sintassi
http://www.techonthenet.com/access/f...vanced/iif.php
Poi bisognerebbe capire in che contesto fai questo controllo sul numero di cifre decimali (maschera,query,ecc.) e cosa dovresti fare una volta appurato il numero.![]()
Niente di speciale: in una form ho un campo numerico [campo1] ed un pulsante [comando1].Originariamente inviato da nicola75ss
L'iif ha una sua sintassi
http://www.techonthenet.com/access/f...vanced/iif.php
Poi bisognerebbe capire in che contesto fai questo controllo sul numero di cifre decimali (maschera,query,ecc.) e cosa dovresti fare una volta appurato il numero.![]()
Alla pressione del pulsante se il campo contiene un numero con 2 decimali mi esce una msgbox e se contiene più di 2 decimali me ne esce un'altra...
E' fattibile con la function che mi hai postato?
Sì.Originariamente inviato da alexxxb
E' fattibile con la function che mi hai postato?
codice:Private Sub pulsante_Click() If decimali(nome_campo) <= 2 Then ..... Else ...... End If End Sub