Condividi tramite

somma di ore, oltre le 24 ore

Anonimo
2012-09-19T15:59:45+00:00

access 2007

=Fix(Somma([ore]))*24+DatePart('h';Somma([ore])) & '.' & Format(Somma([ore]);'nn')

ho applicato questa formula per visualizzare una somma che va oltre le 24 ore in un report, che somma le ore (campo calcolato che contiene una differenza tra ora entrata e ora di uscita). quando la somma arriva a 24, il risultato è -24.00, quando va oltre il risultato è sempre negativo e non coerente al risultato che dovrebbe essere esposto, per esempio un totale di 27 ore viene mostrato -21.00. potete aiutarmi?

ringrazio anticipatamente

Microsoft 365 e Office | Accesso | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

  1. Anonimo
    2012-09-20T08:55:51+00:00

    Visto il problema.

    prova a modificare la formula così:


    =Abs(Fix(Somma([ore]))*24)+DatePart('h';Somma([ore])) & '.' & Format(Somma([ore]);'nn')


    David

    La risposta è stata utile?

    2 persone hanno trovato utile questa risposta.
    0 commenti Nessun commento

Risposta accettata dall'autore della domanda

  1. Anonimo
    2012-09-20T11:08:21+00:00

    ciao David, grazie della risposta.

    l'esempio che fai mi risulta corretto anche a me.

    nel mio data base io ho una query, un campo calcola la differenza tra l'orario di entrata e di uscita di un dipendente

    orep: CDate([Ora_e]-[Ora_uscita])

     

    nel report inserisco la formula di Giorgio Rancati in un campo calcolato per ottenere la somma delle ore di presenza del dipendente

     

    =Fix(Somma([orep]))*24+DatePart('h';Somma([orep])) & ':' & Format(Somma([orep]);'nn')

     

    la somma uguale alle 24 ore ed oltre mi rende risultati negativi

    Ciao Mgio66,

    se:

    [Ora_e] = 14.00

    [Ora_uscita] = 18.00

    allora

    [Ora_e] - [Ora_uscita] = -4 ovvero negativo, Giusto ?

    non credi che il tuo campo calcolato dovrebbe essere :

    orep: CDate([Ora_uscita]-[Ora_e])

    eliminando in questo modo il problema alla fonte ???

    :-)

    Giorgio Rancati

    La risposta è stata utile?

    0 commenti Nessun commento

3 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2012-09-20T07:59:45+00:00

    Ciao,

    per fare la prova ho creato una semplice tabella con un unico campo in formato data/ora e ho inserito 2 record che dovrebbero simulare le tue ore da sommare).

    10:30:00

    23:50:00

    Ho poi creato un report con un campo calcolato in cui ho inserito la formula che aveva indicato Giorgio Rancati in questo post http://answers.microsoft.com/it-it/office/forum/office_2003-access/in-un-report-access-la-somma-di-oreminuti-non-va/d51de09b-e702-49c3-80bd-401127da1ba3

    Ottengo correttamente il risultato di 34 ore e 20 minuti.

    Partendo dal mio esempio, cosa hai tu di diverso affinchè quella formula non restituisce il risultato aspettato?

    David

    La risposta è stata utile?

    1 persona ha trovato utile questa risposta.
    0 commenti Nessun commento
  2. Anonimo
    2012-09-20T09:28:28+00:00

    Perfetto!! non so come ringraziarti.. grazie e basta.

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2012-09-20T08:33:34+00:00

    ciao David, grazie della risposta.

    l'esempio che fai mi risulta corretto anche a me.

    nel mio data base io ho una query, un campo calcola la differenza tra l'orario di entrata e di uscita di un dipendente

    orep: CDate([Ora_e]-[Ora_uscita])

    nel report inserisco la formula di Giorgio Rancati in un campo calcolato per ottenere la somma delle ore di presenza del dipendente

    =Fix(Somma([orep]))*24+DatePart('h';Somma([orep])) & ':' & Format(Somma([orep]);'nn')

    la somma uguale alle 24 ore ed oltre mi rende risultati negativi

    La risposta è stata utile?

    0 commenti Nessun commento