Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

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,
Un merci bien tardif!
Pour l'instant je suis totalement fixé sur le code qui est le moteur du tout.
J'ai rencontré pas mal de problèmes du fait que je n'ai pas la même version d'Excel que celle sur laquelle tourne le code. Je vais me la procurer, mettre le tout ensemble et pouvoir ensuite faire des tests grandeur nature.
A plus tard
Aloha
 

Aloha

XLDnaute Accro
Bonsoir,

Je suis en train de composer les formules qui doivent livrer les chiffres les plus actuels possibles aux concernés et je ne vois pas vraiment clair à quelle date quels chiffres sont disponibles puisque tes calculs dépassent le mois actuel.

En réalité, début du mois (à quelle date?) les chiffres sont disponibles pour le mois précédent, mais comme, p.ex., les données de février ne rentrent que début mars et à ce moment-là les chiffres de janvier sont donc disponibles, donc mois actuel (mars) -2 (janvier).
Ce sont les formules dans AC1:AC12 doivent être de sorte à afficher les bonnes valeurs le bon mois.
DAns le dernier fichier que tu avais joint c'est donc bien en AO46 qu'il y a le dernier chiffre pour janvier, et la nouvelle tournée qui commence le 31 est donc comptabilisée correctement le 1.2. et c'est seulement lorsque les gens reçoivent le fichier vide pour mars que je peux mettre les chiffres de janvier; au mois de février je ne livre donc pas de chiffres parce que le début février n'est pas encore connu.

Est-ce que mon raisonnement est exact?

Bonne soirée
Aloha
 

CISCO

XLDnaute Barbatruc
Bonjour

J'ai un peu oublié comment tout cela fonctionne, donc...

Dans AC1:AC12, tu as le nombre d'heures de congé en fonction du mois considéré, dans AC1 en janvier, dans AC2, dans février, et ainsi de suite.
Dans mon dernier fichier AC1=AO45+AO46.
AC2 correspond au mois de février, mais ce n'est pas correct puisque les données pour le mois de février ne sont pas dans le tableau A:Y.

Début mars, tu reçois les données correspondant au mois de février. Tu les mets à partir de la ligne 47. Et hop, c'est fait.

Mais il ne faut pas oublier que les heures accréditées pour une permanence ne sont totalement correctes que lorsque la ligne suivante est remplie. Donc, il faut remplir le mois de février et le 1er mars.

@ plus

On peut faire sans la colonne AR. Cela serait plus "propre".
 

Aloha

XLDnaute Accro
Bonjour,

Je suis encore sidéré d'avoir constaté qu'il n'y a pas que des P à considérer, mais très rarement aussi des XP (qui correspondent à 1/2h. travaillée et 1/2 heure de permanence) ainsi que des P2 (1/2h. de permanence).
Comme ce n'est malheureusement pas de la théorie mais que je viens de voir une fiche où une salariée a mis deux fois XP en une journée, il faudrait, si possible, les prendre en considération. Si c'est impossible, ou tout simplement trop compliqué, il y a toujours moyen d'intervenir manuellement si le cas se présente.

Bonne journée
Aloha
 

CISCO

XLDnaute Barbatruc
Bonjour à tous, bonjour Aloha

Bonne surprise...

Ca doit être faisable de les prendre en compte, mais bon, pour le moment, je n'ai pas trop le temps...

Est-ce que tu pourrais mettre un petit exemple, juste quelques lignes, montrant comment il faut prendre en compte ces nouveaux "sigles" ?

@ plus
 

Aloha

XLDnaute Accro
Bonjour,

Voici une feuille exemple où la personne effectue 1/2 de travail, puis 1/2 heure de permanence (XP), respectivement commence ou termine une tournée de permanence à la demi-heure (P2).
A+
Aloha
 

Pièces jointes

  • XP et P2.xlsx
    223.9 KB · Affichages: 19

CISCO

XLDnaute Barbatruc
Bonjour

Je n'ai fait le travail que pour XP. J'ai modifié les formules dans les colonnes AA, AB et AD, et mis des noms dans le gestionnaires de noms. J'espère que j'ai bien envisagé tous les cas possibles. Il faut encore vérifier si cela n'a pas de conséquence négative sur les colonnes plus à droite. Comme tu t'en doutes, cela n'est pas évident.

@ plus
 

Pièces jointes

  • XP et P2.xlsx
    244.1 KB · Affichages: 27

Aloha

XLDnaute Accro
Bonjour,

Je ne veux surtout pas te presser!
Seulement, mon problème est que j'ai déjà dû mettre le fichier en service, puisque les fiches de janvier sont déjà rentrées.
Par contre, s'il y avait ces deux codes au mois de janvier j'aurais la possibilité d'intervenir manuellement.
Et le jour où toutes les formules seront adaptées je pourrai toujours recommencer à 0 et réimporter tous les fichiers mensuels.

Bon dimanche
Aloha
 
Dernière édition:

Aloha

XLDnaute Accro
Re,

Sans vouloir te stresser:
Je suis en train de copier les données mensuelles dans les fichiers annuels et je constate que les chiffres au début des colonnes AE et AG sont énormes: 8 946 heures dans le fichier joint. Est-ce normal?

A+
Aloha
 

Pièces jointes

  • Classeur1.xlsx
    229.7 KB · Affichages: 32

CISCO

XLDnaute Barbatruc
Bonjour

"Normal", car il faut modifier le contenu des cellules vertes.

Si vous avez décidé de tout recommencer le 1/01/2018, comme il me semble que c'est le cas, il faut écrire dans AD12 et AF12 la date 1/01/2018, et 0 dans les autres cellules vertes.

@ plus
 

CISCO

XLDnaute Barbatruc
Bonjour

Quand tu as XP tout seul, est-ce que cela donne aussi droit à 0:30 h de congé en plus ?

Ou est-ce qu'en pratique, tu as plutôt des cas avec une série de P commençant et/ou finissant avec un XP ou un P2 ?

@ plus
 

CISCO

XLDnaute Barbatruc
Bonjour

Est-ce que tu pourrais faire des tests au sujet des XP et des P2 sur le fichier ci- joint, en regardant les résultats dans les colonnes AA, AB, AL, AM, AN et AO ?

@ plus

PS : Les situations du style ...P;XP;P... ou P;P2;P ne sont pas prises en compte par les nouvelles formules des colonnes AL, AM et AN. Mais je pense qu'elles ne se présentent jamais dans la réalité... Je pense, du moins j'espère.
 

Pièces jointes

  • XP et P2.xlsx
    245.6 KB · Affichages: 26
Dernière édition:

Discussions similaires

Réponses
4
Affichages
396
Réponses
9
Affichages
247
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…