Newsgroup: it.comp.appl.access
Titolo: If..then su più parametri...è possibile??

Ciao Ciao :-))
Volevo capire attraverso voi se era possibile strutturare
una instruzione If then se due o piu' parametri sono veri...cioe':
If
Me![dataOdierna]=Me[DataOrdine]+7
...e se il campo X non č stato ancora
compilato...then
msgbox " E' passata una settimana dall'inserimento ordine
e ancora non hai inserito il codice di spedizione!! "
end if
Spero di
essere stata chiara.....
E' possibile e come? Non trovo nessun esempio
nell'help...
Grazie a tutti 
Raffa
--------------------------------
Inviato via 
http://usenet.iol.it

 end if
Devi utilizzare l'operatore logico AND:
1)If Condizione1 AND Condizione2 Then.... (Devono essere vere entrambe)
2)If Condizione1 OR Condizione2 Then....  (Basta una delle 2)
Ovvio che puoi inserirne n di AND ed allungare la fila....!!!
@Alex
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 Raffa
Hola Raffa...
certo che è possibile, quasi ti sei risposta da sola :
If Me![dataOdierna]=Me[DataOrdine]+7 And X="" then
...messaggio
else : endif
chiaro?
vedi nell'help funzione And e Or
PS. Non so X che tipo di formattazione ha, perciò l'ho confrontato con "",
altrimenti bisogna guardare nell'help valore Null
Ciao
--
Maurizio75

Posted via Mailgate.ORG Server -
http://www.Mailgate.ORG
--------------------------------
Inviato via 
http://usenet.iol.it
 

Maurizio75
Grazie
anche a te Maurizio...nell'help non si parla assolutamente della condizione
And/Or che si possa utilizzare nell'istruzione If..then......
il campo è
di tipo testo...quindi va benissimo ""
...posso osare  di piu' e chiedervi
un'ulteriore sviluppo dello stesso?....non vorrei abusare  :-)
Grazie
mille


Raffa
Quindi....i parametri devono
essere Veri entrambi...deve essere passata una settimana e il campo ( che
corrisponde ad un dato che deve inserire un operatore) deve essere di tipo
Null.
Alessandro  mi dice che posso nidificare tanti And...allora.Quello
che dovrei fare è questo.Sulla data ok...sugli altri campi il problema è
che ci sono 4 campi che devono essere compilati da persone diverese:
Pippo
campo A
Tonio campo B
Ciccio campo C
Titto  campo D
Quindi se è il
campo di PIppo ad essere vuoto sara'   And Me.A =  "" then.
Siccome puo'
essere uno qualsiasi o piu' campi a non essere compilati...cosa faccio,
nidifico gli if?
If .....And A=""  then
End If
if ... And B="" then
End
If
è corretto in questo modo??
Ciau


 si possa utilizzare nell'istruzione If..then......
Il motivo e' semplice.
nell'help e' specificato che la "condizione" e' una qualsiasi espressione, e
dato che gli operatori and e or (come +,-,*,/, ecc) possono essere compresi
in una espressione, e' automatico.
Ma tutto questo e' basic elementare, bisogna che leggi qualche testo di base
(e' un suggerimento, non un critica)
Sib

Sib
Hai perfettamente ragione!
Per il momento io mi basavo solo sull'help e
pur andando a vedere le "condizioni" e sugli "operatori" non si parla
assolutamente di And/Or; al massimo si parla di While riferito
all'Sql...credo quindi che un libro che approfondisca meglio ci voglia.
Grazie 
Raffaella


 
  Ciao,
tanto per mettere 'i puntini sulle i' ;-)
  Gli if si dicono 'nidificati' quando la verifica di una condizione è 
subordinata al risultato positivo di una verifica precedente. In altre 
parole una struttura ad If nidificati e così fatta:
  If (condizione1) then
    	If (condizione2) then
    	    	...
    	End If
  End If
  Quella scritta da te non è una struttura ad If nidificati, è comunque una 
soluzione possibile al problema da te esposto.
  Fossi in te, per evitare la comparsa di + msg in serie (nel cas, ad ex., 
che sia Pippo che Ciccio si siano dimenticati di compilare il campo) 
scriverei un 
q.sa
 del tipo:
....
Dim sNomi as String
If .....And A="" then sNomi = sNomi & "Pippo, ": End If
If .....And B="" then sNomi = sNomi & "Tonio, ": End If
....
If Len(sNomi) Then 
  sNomi = Left$(sNomi, Len(sNomi)-2) & "."
  MsgBox("I seguenti utenti non hanno compilato il campo xxx: " & sNomi)
End If
  Ciao
---------------------------------------
http://digilander.iol.it/SimonenomiS/
---------------------------------------

---------------------------------------
--------------------------------
Inviato via 
http://usenet.iol.it
 

 all'Sql...credo quindi che un libro che approfondisca meglio ci voglia.
Sono daccordo che un libro ci vuole, non sono daccordo su quanto dici
sull'help.
Se scrivi "Operatori" e scorri l'elenco delle occorrenze trovi "Operatori:
definizione":
++++++
Operatore
Simbolo o parola come > e Or che indica un'operazione da eseguire su uno o
piů elementi. In Microsoft Access sono disponibili numerose classi di
operatori, inclusi gli operatori matematici, di confronto, di concatenazione
e logici.
++++++
Subito sotto la voce operatori:definizione trovi nell'ordine:
Operatori aritmetici
Operatori di concatenamento
Operatori di confronto
Operatori logici
Ossia tutti i tipi di operatori possibili ivi inclusi And e Or che sono
appunto operatori logici.
Sib