Newsgroup: it.comp.appl.access
Titolo: Giorni della settimane

Salve ! Ho un problemino: come faccio ad estrapolare solo i giorni feriali
intercorrenti fra due campi data ?? Grazie a tutti coloro che risponderanno.
Fauno 68
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 Fauno 68
-- 
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------


Ciao, ho inserito le tre funzioni in un modulo richiamandole in una query e
funziona.
I miei campi Date, perň, hanno un formato che prevede anche le ore, i minuti
e i secondi per cui il risultato del campo collegato alle funzioni suggerite
č vuoto. Come faccio a fargli riconoscere che il formato Date da gestire č
piů complesso ?
Un'altra domanda: c'č una funzione suggerita dall'Help di Access che non
riesco a far funzionare (GIORNI.LAVORATIVI.TOT), di sicuro non č altrettando
valida rispetto alle tre "famose" funzioni suggerite. Cosa ne pensate ?
Saluti, Fauno 68


 Saluti, Fauno 68



--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 decimale. Aspetto notizie . Ciao !
Non ho alcuna notizia da darti in quanto non capisco, nel computo dei giorni
lavorativi, cosa significa "un valore decimale"?



--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 Ciao, fauno 68
In Access non esiste l'orario 24:00:00, quindi invece di "01/06/03 24:00:00"
avresti dovuto scrivere "02/06/03 00:00:00".
Se il primo orario si chiama DataIn ed è di tipo Data/ora.
Se il secondo orario si chiama DataFi ed è di tipo Data/ora.
Se il risultato espresso in giorni e frazioni di giorni lo vuoi in una
casella di testo chiamata Giorni.
Se in un modulo del tuo databse hai registrato le funzioni d cui abbiamo
parlato e pubblicate sul Sito Comune.
Prova ad usare il seguente codice VBA:
Me!Giorni = ContaLavorativi(Int(CDate(Me!DataIn)), _
Int(CDate(Me!DataFi)), True)
If (CDate(Me!DataIn) - Int(CDate(Me!DataIn))) < _
(CDate(Me!DataFi) - Int(CDate(Me!DataFi))) Then
    Me!Giorni = Me!Giorni - 1 + _
    ((CDate(Me!DataFi) - Int(CDate(Me!DataFi))) - _
    (CDate(Me!DataIn) - Int(CDate(Me!DataIn))))
Else
    Me!Giorni = Me!Giorni - 1 - _
    ((CDate(Me!DataIn) - Int(CDate(Me!DataIn))) - _
    (CDate(Me!DataFi) - Int(CDate(Me!DataFi))))
End If
Dovrebbe funzionare, facci sapere
-- 
Roberto



Ciao, ma il codice VBA suggerito dove va inserito ?
Saluti, fauno68


 Saluti, fauno68



--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 Saluti, fauno 68



--------------------------------
Inviato via 
http://arianna.libero.it/usenet/


Rieccomi all'ATTACCO:
le analisi che devo fare vanno di mese in mese.
Per alcuni mesi perň il sistema mi lancia il seguente messaggio:
"Espressione non digitata correttamente o troppo complessa per essere
valutata. Un'espressione numerica, ad esempio, puň contenere troppi elementi
complessi. Semplificare assegnando parti dell'espressioni a variabili",
mentre per altri periodi presi in esami tutto č Ok. Cosa posso fare.
Saluti, fauno68



Mi dispiace ma non riesco a capire.
Potresti postare una coppia di date/orari che ti danno errore?
-- 
Roberto
