Saisie de pointage horaire

Une fois n'est pas coutume, cet article a été imaginé suite à une demande d'une personne souhaitant pointer ses horaires de travail lié à ces différentes interventions chez de multiples employeurs.

Le besoin est : comment noter rapidement mes horaires d'entrée et de sortie lors de mes interventions quotidiennes chez mes différents employeurs.

Voici une réponse avec ce formulaire tout simple.


En deux saisies, vous indiquez si vous rentrez ou sortez de chez l'employeur et pour quel employeur.

Une feuille de calcul récupère les saisies avec l'horodatage, l'entrée ou la sortie et l'employeur.


Ensuite, prenez un autre onglet pour réaliser quelques calculs issus de la feuille nommée Données.

Via l'insertion en A2 de la fonction =sort({'Données'!A2:C};1;VRAI()) ,vous retrouvez toutes les saisies.


Reste à réaliser quelques calculs pour obtenir sur la même ligne l'horaire de début et de fin.

En D2, 
=ArrayFormula(IFS(A2:A=""; "";B2:B="Entrée";A2:A;VRAI;""))

En E2,
=ifs(B2<>"Entrée";"";RECHERCHEV(C2;{C3:C\B3:B};2;FAUX())="Sortie";RECHERCHEV(C2;{C3:C\A3:A};2;FAUX()))

Penser à propager la formule sur toutes les lignes

En F2,
=ArrayFormula(SI(E2:E<>"";E2:E-D2:D;""))

En G2, 
=ArrayFormula(SI(F2:F<>"";F2:F*24;""))

En H2, avec l'aide d'une autre feuille indiquant les taux horaires par employeur
=ArrayFormula(SI(G2:G="";"";RECHERCHEV(C2:C;Employeurs!A:B;2;FAUX())))

Vous pouvez ensuite calculer année et mois pour pouvoir ensuite sélectionner un mois précis en J2 et K2

=ArrayFormula(SI(E2:E="";""; ANNEE(E2:E))) et =ArrayFormula(SI(E2:E="";""; MOIS(E2:E)))

Ainsi dans un autre onglet, vous pourrez sélectionner par exemple les saisies du mois de mai via une fonction QUERY

=QUERY('Traitement des données'!A1:K;"select C, D, E, G where J = 2021 and K = 5";-1)