Condividi:        

[Excel] Orario lavoro effettivo dipendenti

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

[Excel] Orario lavoro effettivo dipendenti

Postdi sax » 29/07/06 12:29

Ho un problema nel conteggio degli orari dei dipendenti in quanto ho quattro colonne che riportano l'entrata e l'uscita
Codice: Seleziona tutto
 
        A1            B1               C1                 D1
entrata_mattina--uscita_mattina--entrata_pomeriggio--uscita_pomeriggio


Se il dipendente timbra tutte le volte non ho alcun problema in quanto con la formula
Codice: Seleziona tutto
(b1-a1)+(d1-c1)

Ho il risultato delle ore effettive di lavoro non conteggiando nemmeno l'ora di pausa che è fra il b1 ed il c1

ma se il dipendente timbra solo l'entrata_mattina e l'uscita_pomeriggio
inizia ad esserci il problema infatti mi dovrebbe detrarre l'ora di pausa che dovrebbe essere fra le 12.30 e le 13.30
capita pure che per errore l'entrata_mattina si trova in B1
e l'uscita si trova in D1
avevo pensato di usare la formula
Codice: Seleziona tutto
MAX(A1:D1)-MIN(A1:D1)

ma mi da come risultato solo il numero piu alto

Volevo inserirmi nel topic precedente ma probabilmente si confondevano un po le soluzioni in quanto il problema è differente
Grazie per l'aiuto
sax
Utente Junior
 
Post: 93
Iscritto il: 20/05/06 19:34

Sponsor
 

Postdi danieleg » 29/07/06 13:23

Premetto che ho provato con Open Office, non con Excel. A me la formula che tu hai dato sembra funzionare.
MAX(A1:D1)-MIN(A1:D1)

Attenzione che tra A1 e D, se ci metto i due punti (come mi pare hai fatto tu) funziona bene, se ci metto il punto e virgola mi dà invece il risultatop che tu lamenti. Può darsi che Excel abbia i simboli invertiti rispetto ai miei.
Comunque, visto che le celle sono soltanto quatto, potresti elencarle tutte (Open Office ammette fino a 30 celle) e otterresti il risultato che tu vuoi.
Avatar utente
danieleg
Utente Senior
 
Post: 850
Iscritto il: 10/07/06 15:58
Località: Vicino a Imperia

Postdi Alexsandra » 29/07/06 14:02

...ma se il dipendente timbra solo l'entrata_mattina e l'uscita_pomeriggio ..
Le regole sono fatte per essere rispettate.
Io terrei quel bug,anzi lo creerei per far risaltare che non ha timbrato.
Avatar utente
Alexsandra
Utente Senior
 
Post: 2358
Iscritto il: 09/01/06 20:31

Postdi sax » 29/07/06 16:03

vero la formula funziona
non funziona a me perchè giustamente due dei quattro numeri sono uguali a o,oo quindi avendo
Codice: Seleziona tutto
a1 -  b1 -  c1 -  d1
0,00-8,00-0,00-13,00


mi da come risulato 13,00 anzichè 5,00
sax
Utente Junior
 
Post: 93
Iscritto il: 20/05/06 19:34

Postdi sax » 29/07/06 16:33

x alexandra
...Le regole sono fatte per essere rispettate.

diglielo ai dipendenti quando a fine mese gli paghi lo stipendio se vi è qualche errore causato dal fatto che magari hanno dimenticato di timbrare
io ero presente quindi voglio ....

devo prevedere quasi ogni problema.
sax
Utente Junior
 
Post: 93
Iscritto il: 20/05/06 19:34

Postdi danieleg » 29/07/06 16:46

suggerimento indipendente dall'informatica: se il dipendente entrando timbra alle 8, mentre l'orario di inizio lavoro è alle 8 e 30, probabilmente la prima mezz'ora la passa a leggere il giornale, ma con questo sistema tu glie la paghi lo stesso.
Avatar utente
danieleg
Utente Senior
 
Post: 850
Iscritto il: 10/07/06 15:58
Località: Vicino a Imperia

Postdi sax » 29/07/06 16:52

quel problema l'ho gia risolto e il risultato esposto è gia al netto di eventuali ritardi o anticipi infatti se timbrano prima viene conteggiata l'entrata dall'orario effettivo di inizio lavoro se viene timbrato piu tardi pazienza levo minuti o ore a secondo della vera timbratura
sax
Utente Junior
 
Post: 93
Iscritto il: 20/05/06 19:34

Postdi Anthony47 » 30/07/06 12:42

Se le celle non timbrate sono “vuote” e non contengono “0”, allora il Max-Min funziona, salvo l’ approssimazione del metodo.

Io suggerirei un foglio piu’ complesso, che presenta le 4 colonne delle timbrature (A-D) piu’ 4 colonne per le correzioni manuali (E-H), piu’ 4 celle che definiscono i valori di default; da queste colonne calcolerei la presenza con la formula
Codice: Seleziona tutto
=SE(F2="";SE(B2="";MUS;B2);F2)-SE(E2="";SE(A2="";MES;A2);E2)+SE(H2="";SE(D2="";PUS;D2);H2)-SE(G2="";SE(C2="";PES;C2);G2)

MES, MUS, PES e PUS sono 4 celle a cui e’ stato assegnato quel nome, che contengono gli orari standard (Mattina Entrata, Mattina Uscita, Pom Entrata e Pom Uscita).

La formula utilizza in priorita’ decrescente: i valori inputati come correzione manuale, le timbrature, gli orari teorici previsti per quel campo.

Ciao,
Avatar utente
Anthony47
Moderatore
 
Post: 19438
Iscritto il: 21/03/06 16:03
Località: Ivrea

Postdi sax » 30/07/06 18:44

Anthony47
La tua soluzione è ideale ma ho qualche problema infatti dovrei intervenire parecchie volte manualmente
invio un file di esempio cosi vedi una parte del programma.
http://freefilehosting.net/?id=rdn3l6nY9w==
sax
Utente Junior
 
Post: 93
Iscritto il: 20/05/06 19:34

Postdi Anthony47 » 31/07/06 16:08

Ho dato uno sguardo al file postato.
La mia formula, applicata sulla colonna AM, va modificata in quanto non si usano piu’ i valori di timbratura (che potevano essere “nulli”) ma altri valori elaborati (che in assenza di timbratura sono “zero”); inoltre, guardando la casistica, aggiungerei una ulteriore clausola, sia sul calcolo del lavorato mattutino che sul lavorato pomeridiano: qualora siano a Zero sia entrata e uscita da timbratura che entrata e uscita da correz. Manuale allora il tempo lavorato in quel periodo sara’ Zero.
La formula sara’
Codice: Seleziona tutto
=(SE(AF7="";SE(AB7=0;AJ7;AB7);AF7)-SE(AE7="";SE(AA7=0;AI7;AA7);AE7))*(AA7+AB7+AE7+AF7>0)+(SE(AH7="";SE(AD7=0;AL7;AD7);AH7)-SE(AG7="";SE(AC7=0;AK7;AC7);AG7))*(AC7+AD7+AG7+AH7>0)

In questo modo sara’ necessario intervenire manualmente, nell’ esempio che hai pubblicato, solo sulle righe del 4/5/7 e forse 19 luglio.

Per quanto riguarda l’ ipotesi di inserire ulteriori regole, si potrebbe ragionare che una timbratura di Uscita mattutina anteriore alle 10 debba essere considerata invece una timbratura di entrata, se l’ entrata manca; questo lo fai con
Codice: Seleziona tutto
AA7 =SE(E(W7>6.5;W7<7);7;SE(E(W7=0;X7<10);X7;W7))
AB7 =SE(E(X7>=16.95,X7<17.1),17,SE(E(X7>=12.95,X7<13.45),13,SE(W7=0,0,X7)))


Commenti:
Ho notato che alcune celle in colonna X hanno la formula errata (puntano alla colonna G invece che alla E).
Puoi migliorare la leggibilita’ del foglio scrivendo nelle intestazioni (es riga 4) il significato di ogni gruppo di colonne.
Infine, un po’ di disciplina in piu’ da parte dei dipendenti aiuterebbe molto...

Ciao,
Avatar utente
Anthony47
Moderatore
 
Post: 19438
Iscritto il: 21/03/06 16:03
Località: Ivrea

Postdi Anthony47 » 31/07/06 16:21

Sorry, ho copiato male la formula di AB:
Codice: Seleziona tutto
AB7 =SE(E(X7>=16.95,X7<17.1),17,SE(E(X7>=12.95,X7<13.45),13,SE(E(W7=0,X7<10),0,X7)))


Ciao,
Avatar utente
Anthony47
Moderatore
 
Post: 19438
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "[Excel] Orario lavoro effettivo dipendenti":


Chi c’è in linea

Visitano il forum: Nessuno e 72 ospiti