Newsgroup: it.comp.appl.access
Titolo: Una somma difficile....in una maschera.

Vi farò sorridere (o rabbrividire) ma...
In una maschera ho due caselle di testo (formattate valore) alimentate
da una combinata delle quali vorre fare la somma.
Non sempre entrambe le celle non sono nulle, quindi dovrei usare la
funzione NZ.
La casella della somma perde la formattazione e quindi se sommo 12+56
mi da 1256 quindi dovrei usare la funzione CSNG o CINT.
in pratica:
Me.Speso = CSng([consumato]) + CSng([consumato2])
funziona solo se non ho valori nulli
Me.Speso = =nz([consumato])+nz([consumato2])
restituisce consumatoconsumato2
Me.Speso = CSng(nz([consumato]))+CSng(nz([consumato2]))
da errore
Qualcuno mi dà un gentilissimo aiuto ?
grazie infinite e mi scuso se ho scritto baggianate

 da errore
IMHO hai dimenticato il secondo parametro della Nz.
Me.Speso = CSng(nz([consumato];0))+CSng(nz([consumato2];0))
HTH
Popi


ciao Popi,sei un grande, grazie per l'immediata risposta, mi hai fatto
sognare...
purtroppo non mi funziona ancora, cioè funziona solo se entrambi non
sono nulli.
ho provato a incollare su codice (dopo evento) e lo scrive già in
rosso e mi dice errore di sintassi.
l'ho messo in una casella di testo (ovviamente senza me.speso) e mi da
errore.
grazie infinite
scusa ancora grazie davvero tanto dell'aiuto.
ciao
M


Nella casella di testo hai impostato l'origine dato a "=
CSng(nz([consumato];0))+CSng(nz([consumato2];0))" e che errore ti da?
Se, invece, usi il codice te lo segna in rosso perche' il separatore
dei parametri non deve essere ";" ma "," (piu' che gRande stavolta
sono gLande).
Popi

 - Mostra testo citato -
Purtroppo in entrambi i casi (sia da codice e da casella di testo) non
funziona se un dato è nullo.
Da codice si blocca e ti rimanda sul listato dell'istruzione mentre
sulla casella di testo da: #Errore
Tutte e quattro le caselle hanno formato standard a due decimali.
cumunque grande grande grande per la gentilezza e l'interessamento,
grazie davvero.
p.s. dove sei (località se è lecito?)
ciao


Mi domando se, anziché nulli, i campi non possano contenere una
stringa vuota ...
In tal caso sarebbe stato bene che, quando dici "rimanda sul listato",
dicessi anche il testo e numero dell'errore che viene segnalato.
Se imposti l'origine dati della casella di testo a
"=Iif(Nz([Consumato];'')='';0;Csng([Consumato]))
+Iif(Nz([Consumato2];'')='';0;Csng([Consumato2]))" cambia qualcosa?
HTH
Popi da La Spezia

 Popi da La Spezia- Nascondi testo citato


 ha scritto nel messaggio 
news:72de72d9-ebc4-4f3a...@z37g2000vbl.googlegroups.com...

HTH
Popi da La Spezia
Forza Massese!!!
E anche forza Carrarese!!!!
*grin*
Antonio

 *grin*
Toh, e' proprio vero che appena piove un po' escono i talponi ...
*evil grin*
Pensa che nel '90, quando facevo assistenza hw/sw, tra i miei clienti
c'erano la carrarese calcio e uno della dirigenza della massese.
Ad ogni intervento era festa!!!
Popi :)))))))))))))))



Cerea neh!
Facciamo una cosa: cancelliamo tutto quanto detto sin'ora.
Nel codice metti
Me.Speso=Iif(Nz(Me.Consumato,"")="",0,Csng(Me.Consumato))
+Iif(Nz(Me.Consumato2,"")="";0;Csng(Me.Consumato2))
Popi

 - Mostra testo citato -
Ciao Popi,
grazie infinite, funziona alla grande !!!!
Un grande e sincero abbraccio.