Newsgroup: it.comp.appl.access
Titolo: Controlli sui campi

Ho bisogno di un controllo che non permetta di lasciare il campo x vuoto se
il campo y presente un certo valore.
In altre parole se un prodotto risulta venduto, non può essere lasciato in
bianco il campo "data di vendita".
Come posso fare?
Alessandro

 ha scritto nel messaggio
news:nBZH6.9479$_r2.1...@news2.tin.it...

nella routine "dopo aggiornamento" del campo che indica il venduto metti
me.campodatavenduto=date    'ossia la data attuale
;)
se vuoi un controllo maggiore con immissione manuale della data venduto
metti un messaggio
msgbox "Riempite la data!"
me.campodatavenduto.setfocus
e sul campo "campodatavenduto" in uscita  metti
if me.campodatavenduto="" or isnull(campodatavenduto) then
me.campodatavenduto.setfocus          'cosi' non escono finche non lo hanno
riempito
endif
Ciao ;)
--
(^o^))~    Lorenzo   (^o^))~
"Preimaginare e' lo imaginare le cose che saranno..."
"Postimaginare e' imaginare le cose passate ..."
(Leonardo Da Vinci)

 ha scritto nel messaggio
news:nBZH6.9479$_r2.1...@news2.tin.it...

Effettua tale verifica nell'evento "Prima di aggiornare" della tua maschera
e se la verifica è negativa annulla l'evento di registrazione del record
(Cancel = True), dai un messaggio di avvertimento all'operatore con una
MsgBox  e sposta il fuoco sul controllo "data di vendita".
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


Grazie Roberto, ma non mi č chiaro...
... se hai voglia puoi essere piů chiaro?
Grazie mille
Alessandro


Se nella tua maschera hai due controlli: uno chiamato ImportoVendita
associato ad un campo di tipo numerico e l'altro chiamato DataVendita
associato ad un campo di tipo Data/ora, a fronte dell'evento "Prima di
aggiornare" della tua maschera genera il seguente codice VBA:
If Me!ImportoVendita <> 0 Then
    If IsNull(Me!DataVendita) Then
        MsgBox "Digita la data di Vendita"
        Cancel = True
        Me!DataVendita.SetFocus
    End If
Else
    If Not IsNull(Me!DataVendita) Then
        MsgBox "Digita l'importo di Vendita"
        Cancel = True
        Me!ImportoVendita.SetFocus
    End If
End If
Così facendo tutto andrà OK solo se i controlli saranno o ambedue
significativi o se saranno ambedue senza valore; in caso contrario otterrai
un messaggio che segnala il tipo di errore, il record non verrà registrato
ed il mouse si sposterà sul controllo che non è stato digitato.


 ha scritto nel messaggio
news:miiI6.3090$UW4.1...@news.infostrada.it...

Scusa l'ignoranza, ma ho nominato i campi della tabella con nomi del tipo
Data uscita (inserendo quindi uno spazio) quindi quando tento di inserirli
nel codice vba mi da errore.
Il nome del campo deve essere composo da una sola parola?
Grazie ancora.
Alessandro


Non necessariamente: nel tuo caso chiudi i nomi dei controlli tra parentesi
quadre. Per non avere questa seccatura o li fai di una sola parola o leghi
le due parole con un underscore ( _ ).


 ha scritto nel messaggio
news:wklI6.4837$UW4.6...@news.infostrada.it...

Non ho parole troppo gentile!!!
Approfitto e faccio altre due domande:
1) Quando mi compare il MsgBox che mi dice di inserire la data, clicco su OK
e mi dice: "L'azione DoMenuItem è stata annullata". Posso evitare che appaia
questo messaggio?
2)Se i campi da controllare "non vuoti" sono due o più come devo modificare
il codice?
Grazie e grazie ancora!
Alessandro

 Alessandro
--


 ha scritto nel messaggio
news:q6zI6.10543$UW4.7...@news.infostrada.it...

Purtroppo anche con il nuovo codice che mi hai fornito  il problema della
visualizzazione del messaggio "L'azione DoMenuItem è stata annullata"
permane!
Non sono prorpio riuscito a risolvere...
Alessandro

 Alessandro
scusate se mi intrometto, ma imho da qualche parte stai eseguendo
un'azione del tipo:
   docmd.DoMenuItem ...
ed e questo che genera l'errore, non il codice che ti ha fornito
Roberto.
-- 
Federico
----------------------------------
Rimuovi paperino. per e-mail
----------------------------------
Tutte le richieste che arrivano
in privato, vengono cestinate.
----------------------------------
Sito Comune di it.comp.appl.access
http://www.sitocomune.com
mailto:
webm...@sitocomune.com
----------------------------------


A questo punto non ho la più pallida idea del motivo per cui ti compare
questo messaggio.
Mi dispiace.
