XL 2010 Détecter les périodes de <44 h. libres pendant 7 jours

Aloha

XLDnaute Accro
Bonjour,
Le titre est un peu compliqué; je l'explique.
Le contexte: des salariés ont droit à 1 jour de congé supplémentaire lorsque pendant 7 semaines consécutives ou non ils ne sont pas libres pendant 44 h. de suite par semaine.

Ils remplissent chacun une fiche mensuelle où ils saisissent toutes les heures en relation avec le contrat de travail, heure par heure, en inscrivant dans les cellules le type d'heure : travail ("X"), congé ("C"), maladie ("M"), heures supplémentaires (6 sortes, de "S1" à "S6"), réunions ("R"), etc. Ces fiches sont regroupées dans un classeur dont le nom se compose du nom du service, du mois et de l'année ([Mois] [Année] [SERVICEX].XLSX)

Admettons que je sois arrivé à regrouper ces données mois par mois et salarié par salarié (pour l'instant je le simule dans le fichier ci-joint; je dois m'occuper de ce problème par après) dans une base de données, en y copiant (de préf. par VBA, sinon par formule), les données requises de toutes les fiches de tous les mois et de tous les services.

Ce qui donne, en gros, un fichier comme celui qui est ci-joint.

J'ai donc compté jour par jour dans les fichiers remplis par les salariés les cases horaires (00:00 à 24:00, puisque le service fonctionne nuit et jour tous les jours de l'année) où il y a une inscription (colonne D) et j'ai retranché ce chiffre de 24, ce qui me donne donc les heures libres par période de 24 heures (colonne E). La colonne F tient compte de la date d'engagement et ne reprend les valeurs de la colonne E que pour la période du contrat de travail, sinon "HC" (hors contrat) est inscrit dans la case correspondante.

Il s'agit donc à présent de détecter, 7 jours par 7 jours, les périodes où dans la colonne F l'addition de 2 cellules superposées ne donne pas au moins 44, en commençant, pour déterminer les périodes de 7 jours, par le 1er janvier, resp. par la date d'engagement si le salarié a été engagé pendant l'années en cours,
 

Pièces jointes

  • 44 h. libres.xlsx
    18 KB · Affichages: 50

Aloha

XLDnaute Accro
Bonsoir,
Parce qu'il n'y a pas toujours, ou même rarement, une 3e période. C'est pourquoi je dois vérifier s'il y en a une. Et en plus la date fin peut être -ou l'est même normalement- vide, ce qui signifie qu'il y a CDI et que la salariée continue au-delà de l'exercice en cours avec cette tâche.

La plupart des salariés ne changent pas de tâche hebdomadaire au cours de l'année, mais ça arrive.
Au début je n'avais prévu que 3 tâches différentes possibles, mais il y avait une situation où une salariée avait 3 changements, c'est pourquoi j'avais étendu le système à un maximum de 6 tâches différentes.
Bonne soirée
Aloha
 

CISCO

XLDnaute Barbatruc
Bonjour

Cf. en pièce jointe les formules en colonnes H et I.
Est-ce que tu peux me réexpliquer les calculs que tu as mis dans la colonne J ? Je ne comprends pas vraiment ce que tu veux.

@ plus
 

Pièces jointes

  • Répartition des jours de congé supplémbis..xls
    43.5 KB · Affichages: 38

Aloha

XLDnaute Accro
Bonjour,

Je ne sais pas ce qui se passe: j'avais posté ma réponse, mais je constate qu'elle n'est pas arrivée!

La colonne J doit calculer la part des différentes périodes (qui se distinguent par des tâches hebd. différentes) au jour de congé.
Ainsi, s'il n'y avait qu'une période, du 1.1. au 31.12., et si la tâche était de 40h., le jour de congé équivaudrait à 8 heures; avec 20h/sem. à 4 heures.

S'il a été engagé au cours de l'année, qu'il travaille toujours au 31.12., et que la tâche n'a pas changé, il équivaut à 8/365 * (31.12-date début contrat de travail) /40 * la tâche.

Si, par contre, il y a différentes périodes à tâches hebdomadaires différentes, chacune a sa part dans le jour, compte tenu de sa durée par rapport à la durée totale du contrat de travail au cours de cette année (qui est de 365 jours s'il a été engagé <=1.1. et qu'il travaille toujours au 31.12.).

Pour résumer: le nombre d'heures que vaut ce jour est fonction du nombre de jours d'une période par rapport au total des jours de toutes les périodes et de la tâche pendant cette période.

A+
Aloha
 

Aloha

XLDnaute Accro
Re,
il y a un problème avec les formules en G.
Si je change la date en G10, donc si le salarié a p.ex. droit au jour le 28.5., ce n'est pas la date fin de la 1ère période qui doit apparaître en G11, parce que située après la date d'échéance du jour de congé, mais, dans le cas d'espèce, celle de la 2e. CF fichier joint.

J'ai ajouté un autre exemple pour illustrer les calculs (en aval de la récupération des données requise; ça c'est un autre problème) à partir de la colonne U.

A+
Aloha
 

Pièces jointes

  • Aufteilen zusätzl 1.xls
    45 KB · Affichages: 15
Dernière édition:

Aloha

XLDnaute Accro
Tu veux dire en G10? Ca c'est évidemment un cas limite qui exige davantage de performance encore de la formule, car elle doit donner le nombre 1 si le jour du congé coïncide avec la date fin d'une période.

On a posté simultanément: j'ai ajouté du texte et un fichier à mon message précédent.
 

CISCO

XLDnaute Barbatruc
Bonjour

OK pour ton dernier message.

Est-ce que tu pourrais travailler avec un fichier organisé comme la pièce jointe, ou est-ce que cela te pose problème ?

Est-ce que la colonne H donne les bonnes dates ?

@ plus
 

Pièces jointes

  • Répartition des jours de congé supplémquatre..xls
    42 KB · Affichages: 20

Aloha

XLDnaute Accro
Bonsoir,
désolé, mais j'ai constaté 2 problèmes:
si je change la date dans H10 au 5/5, alors il y a #VALEUR dans J13.
Qui plus est: le résultat des calculs est 8 heures, ce qui ne peut être exact. Ce serait 8 heures si la personne avait travaillé toute l'année, et 40h/sem.
Il y a une double réduction
* du fait qu'elle a commencé seulement au cours de l'année
* du fait qu'elle ne travaille pas toujours 40 heures.
A+
Aloha
 

Aloha

XLDnaute Accro
Bonsoir,

C'est pénible pour moi de te le dire, mais les formules en J ne donnent toujours pas le bon résultat. Je les ai corrigées.
Bonne soirée
Aloha
 

Pièces jointes

  • Aufteilen zusätzl 2.xls
    43 KB · Affichages: 18
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
311 711
Messages
2 081 789
Membres
101 817
dernier inscrit
carvajal