Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Calcolo ore straordinario

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Calcolo ore straordinario

Postdi Cedamido » 07/02/16 10:08

Le ore notturne vanno dopo le ore 22 alle ore 6.
cella B6 domenica 7 febbraio 2016
cella C6 dalle ore 13.00.00 cella D6 alle ore 6.00.00
totale ore 17.00.00 ricavate da =D6-C6+SE(C6>D6;24)
cella F6 totale ore notturne ricavate da =(RESTO(D6-C6;1)*24-(D6<C6)*(22-6)+MEDIANA(6;22;C6*24)-MEDIANA(6;22;D6*24))/24
Vorrei calcolare nella cella G6 le ore notturne o festive
nella cella H6 le ore notturne e festive
nella cella I6 le ore diurne.
Nelle celle G6 H6 e I6 le ore dovrebbero apparire come numeri interi.
Grazie
excel 2003
Cedamido
Utente Senior
 
Post: 234
Iscritto il: 17/08/08 23:26

Sponsor
 

Re: Calcolo ore straordinario

Postdi Anthony47 » 09/02/16 02:05

Per questi calcoli avevo elaborato la funzione Xstra;
Il codice e' riepilogato qui: viewtopic.php?f=26&t=74698&p=614928#p614928
La logica della funzione e' descritta qui: viewtopic.php?f=26&t=69705

Sicuramente ci sono formule che fanno gli stessi calcoli, ma io le ignoro.

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13885
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Calcolo ore straordinario

Postdi Cedamido » 09/02/16 21:03

OK grazie.
excel 2003
Cedamido
Utente Senior
 
Post: 234
Iscritto il: 17/08/08 23:26

Re: Calcolo ore straordinario

Postdi Saris » 01/03/16 22:48

Salve a tutti, sono nuovo del forum e sono giunto qui cercando un modo per suddividere le ore di straordinario .... proprio come fa questa funzione!!!!

Oltre a fare i complimenti all'autore vorrei segnalare che dopo non poche peripezie sono riuscito ad adattare la funzione alle mie esigenze.
direte voi: facile la pappa era bella e pronta!!!!
... ma nonostante ciò mi sono rimasti alcuni problemini che non riesco a risolvere e per questo chiedo aiuto all'autore:

Vado per ordine e se Antony è così gentile da aiutarmi andrò avanti con i dubbi riscontrati (nella speranza che poi riesca a risolverli da solo).

Il primo è che non mi considera la seconda coppia di in/out.
Saris
Utente Junior
 
Post: 16
Iscritto il: 29/02/16 15:49

Re: Calcolo ore straordinario

Postdi Anthony47 » 02/03/16 23:47

Ciao Saris, benvenuto nel forum.
Penso che la cosa migliore sia intanto allegare un file dimostrativo con un tot di dati e la tabella DefOrari gia' impostata, e gia' contenente un paio di esempio di casi non funzionanti.

Per come allegare un file guarda qui: viewtopic.php?f=26&t=103893&p=605487#p605487
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13885
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Calcolo ore straordinario

Postdi Saris » 07/03/16 20:27

Grazie Anthony e scusa se rispondo solo adesso.... lavoro :-) per questo mi serve calcolare lo straordinario :-)

Ho modificato il tuo codice vba in questo modo e sembra funzionare ma non ho avuto il tempo di fare tutte le prove necessarie:
(sono sicuro che comunque l'errore non è nel vba ma lo commetto io nelle impostazioni del file)
...
'MODIF:
If InOuTable.Offset(0, 3).Value = 0 Then Out2 = Out1 Else Out2 = InOuTable.Offset(0, 3).Value + (InOuTable.Offset(0, 3).Value < In2) * -1
DefCols = DefOrario.End(xlToRight).Column - DefOrario.Column
....

Il file lo torvi qui: http://www.filedropper.com/turniconpranzo

ovviamente ancora incompleto per quel che riguarda la spunta del pranzo ed altre cosette.

Specifico inoltre che le ore notturne sono considerate quelle dalle 22:00 alle ore 06:00 e che le prime sei ore di ogni giorno sono sempre lavorative. Anche se si inizia a lavorare alle 22:00 e si finisce alle 06:00 saranno da considerare due turni: uno per il primo giorno che va dalle ore 22:00 alla mezzanotte (due ore notturne a meno che non siano state lavorate altre ore in precedenza) ed uno per il secondo giorno che va dalle 00:00 alle ore 06:00 (sempre notturne e non possono mai essere straordinario come lo saranno quelle successive alle sei ore) questo significa che non sarà mai inserito come ultima uscita un'orario oltre le 24:00.
Spero che sia stato almeno un po' chiaro.
Grazie per l'interessamento
Saris
Utente Junior
 
Post: 16
Iscritto il: 29/02/16 15:49

Re: Calcolo ore straordinario

Postdi Anthony47 » 08/03/16 00:57

Lavorando sul file pubblicato dovresti pero' indicare alcuni casi dove il risultato calcolato dalla xstra e' errato (che risultato ti aspettavi /che risultato invece si ottiene).

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13885
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Calcolo ore straordinario

Postdi Saris » 08/03/16 10:58

Ciao Anthony, prima di tutto ti ringrazio per l'interessamento.
Poi:
questa mattina sono riuscito a fare le prove dei calcoli e mi sembra tutto funzionante correttamente. Possiamo dire che la tua influenza è stata sufficiente a far si che tutto funzionasse :-)
Però a questo punto ti segnalo la modifica che ho apportato al vba per far si che venissero riconosciute le seconde coppie in/out:
Questa è la stringa che ho modificato:
ORIGINALE
'MODIF:
If InOuTable.Offset(0, 3).Value = 0 Then Out2 = In2 Else Out2 = InOuTable.Offset(0, 3).Value + (InOuTable.Offset(0, 3).Value < In2) * -1

MODIFICATA DA ME

...
'MODIF:
If InOuTable.Offset(0, 3).Value = 0 Then Out2 = Out1 Else Out2 = InOuTable.Offset(0, 3).Value + (InOuTable.Offset(0, 3).Value < In2) * -1
DefCols = DefOrario.End(xlToRight).Column - DefOrario.Column
....

Spero che con questa modifica non abbia snaturato la funzione e poi mi ritrovo con valori imprevisti in casi non ancora considerati.
Saris
Utente Junior
 
Post: 16
Iscritto il: 29/02/16 15:49

Re: Calcolo ore straordinario

Postdi Anthony47 » 08/03/16 15:13

Quelle righe servono per gestire blocchi di timbrature mancanti; es E/U solo la mattina.
Per come la vedo, quella modifica non dovrebbe servire, se le timbrature vanno a coppia.

Mi fai un esempio di timbrature per cui la xstra standard restituisce valori sbagliati? Indica sia le timbrature che la formula utilizzata che il valore restituito che il valore atteso.

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13885
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Calcolo ore straordinario

Postdi Saris » 09/03/16 12:19

Ciao Anthony. Al momento non ho il pc a disosizione quindi non riesco a verificare. Comunque senza la mldifica la xstra standard non mi leggeva la seconda coppia di e/u, in nessun caso, con o senza orari nella prima coppia.
Saris
Utente Junior
 
Post: 16
Iscritto il: 29/02/16 15:49


Torna a Applicazioni Office Windows


Topic correlati a "Calcolo ore straordinario":


Chi c’è in linea

Visitano il forum: Nessuno e 10 ospiti