Calculateur d'absence selon plusieurs fichiers

Bonjour la communauté !

J'ai un petit souci avec un fichier, déjà depuis 1 mois… (Je m'excuse du pavé mais je pense que c'est nécessaire pour comprendre mon besoin …

Je dois calculer le nombre d'absences de chaque personne au sein de 5 services différents. Pour cela je dispose de 4 plannings.

Dans mon fichier la macro présente calcul toutes les cases où les critères suivants sont renseignés : « CPB », "CPB N-1, "RTT", ARR", "MAL", ACP", "ALT".

J'ai réussi à adapter la macro à plusieurs services mais j'ai encore des soucis surs :

  • Le format du mois de janvier pose un problème à la macro. De plus la dernière feuille comprend un bout de janvier 2021, et ne doit pas être pris pour 2020.
  • Le mois de février et de mars donne un mauvais résultat, alors que les autres sont bons.
  • Le nombre d'absences ce calcul 2 fois, car en général une absence dure 1 jour, donc absent le matin et l'après-midi. Le résultat doit donc être 1 jour, et pas deux. (0.5 par demi-journée).
  • Le plus compliqué viens maintenant… Le service informatique comprend deux services et donc doivent apparaître sur ligne différente. (Service Ecran et Service Clavier) :
    • Service Ecran :
      • Louis à 100% pour ce service
      • Thierry à 100% pour ce service
      • Sophie à 50% pour le service Ecran et 50 % pour le service Clavier.
        DONC s’il y a 14 Jours d’absences alors 7 jours pour le service Clavier et 7 jours pour le service Ecran.
      • Aurélie à 25% pour ce service, donc si 14 jours d’absences alors 3.5. (14/4)
    • Service Clavier
      • Le reste des personnes sont dans le service Clavier et travaillent à 100%

Je vous mets en pièce jointe trois fichiers :

- Le calculateur, avec la macro
- Le planning Informatique, où est compris le service Ecran et Clavier
- Le planning achat, pour tire d'exemple d'un autre service.

Merci beaucoup de votre aide, je suis sans solution…

Bonjour,

problème d'utilisation de fichier ...

capture d ecran 136

Bonjour,

Je ne comprends pas trop l'erreur, …

Je transmets une nouvelle version de ce fichier, si le problème persiste il faudra garder uniquement les deux autres fichiers. (Celui-ci n'est pas important sauf pour l'exemple)

Merci

Toujours pareil et impossible de sortir d'excel.

Je vais regarder l'autre.

Pareil pour l'autre, donc je te signale que j'arrête de suivre ce post.

Désolé du dérangement,

Je vais regarder ce soir le problème de chez moi.

Merci en tout cas d'avoir soulevé le problème.

Dans le fichier, tu as un onglet du 1-22Janv et on parle de semaines 50 !

Globalement, la structure du fichier, c'est de la folie ... tu as du passer un temps fou, sachant qu'en plus chaque année tout est à refaire, wahou. Je suppose qu'il faut prendre cela comme un invariant ?

Est-ce que cette modification suffit à corriger janvier ?

colF = f.Rows("9:9").Find(what:=1, after:=f.Cells(9, 3), lookat:=xlWhole).Column - 1

le but étant de s'affranchir du premier 1 dans l'onglet 1-22Janv

  • Le mois de février et de mars donne un mauvais résultat, alors que les autres sont bons.

As-tu identifié la raison ? un jour manquant ? ou ??

  • Le plus compliqué viens maintenant… Le service informatique comprend deux services et donc doivent apparaître sur ligne différente. (Service Ecran et Service Clavier) :
    • Service Ecran :
      • Louis à 100% pour ce service
      • Thierry à 100% pour ce service
      • Sophie à 50% pour le service Ecran et 50 % pour le service Clavier.
        DONC s’il y a 14 Jours d’absences alors 7 jours pour le service Clavier et 7 jours pour le service Ecran.
      • Aurélie à 25% pour ce service, donc si 14 jours d’absences alors 3.5. (14/4)
    • Service Clavier
      • Le reste des personnes sont dans le service Clavier et travaillent à 100%

Où sont portées ces infos dans les fichiers ? j n'aime pas coller en dur dans la macro des paramètres.

Dans le fichier, tu as un onglet du 1-22Janv et on parle de semaines 50 !

Globalement, la structure du fichier, c'est de la folie ... tu as du passer un temps fou, sachant qu'en plus chaque année tout est à refaire, wahou. Je suppose qu'il faut prendre cela comme un invariant ?

Bien vu ! Je corrige ça, la donnée doit bien être S1 S2 S3 et S4

Oui il le faut, le format ne changera pas par contre, il restera le même d'une année à une autre..

C'est un planning rempli manuellement par tous les services, je ne remplis quasiment rien dedans, je peux modifier le format, rajouter des lignes, si cela peut aider.

Est-ce que cette modification suffit à corriger janvier ?

colF = f.Rows("9:9").Find(what:=1, after:=f.Cells(9, 3), lookat:=xlWhole).Column - 1

le but étant de s'affranchir du premier 1 dans l'onglet 1-22Janv

Malheureusement non, cela affecte tous les mois. De plus le mois de janvier n'apparait toujours pas, je viens de m'apercevoir aussi que février "pour une raison inconnue", ne donne plus aucune donnée.

  • Le mois de février et de mars donne un mauvais résultat, alors que les autres sont bons.

As-tu identifié la raison ? un jour manquant ? ou ??

  • Le plus compliqué viens maintenant… Le service informatique comprend deux services et donc doivent apparaître sur ligne différente. (Service Ecran et Service Clavier) :
    • Service Ecran :
      • Louis à 100% pour ce service
      • Thierry à 100% pour ce service
      • Sophie à 50% pour le service Ecran et 50 % pour le service Clavier.
        DONC s’il y a 14 Jours d’absences alors 7 jours pour le service Clavier et 7 jours pour le service Ecran.
      • Aurélie à 25% pour ce service, donc si 14 jours d’absences alors 3.5. (14/4)
    • Service Clavier
      • Le reste des personnes sont dans le service Clavier et travaillent à 100%

Où sont portées ces infos dans les fichiers ? j n'aime pas coller en dur dans la macro des paramètres.

Non je n'ai pas trouvé après avoir compté une vingtaine de fois l'intitulé des cases j'ai toujours une différence de 20.
Ils ne sont pas inscrit mais il peuvent l'être, je le rajoute dans le fichier.

J'ai rajouté le critère en AF et AG pour le temps partiel

J'ai modifié le format semaine de janvier.

N'hésite surtout pas à rejouté des lignes colonnes, formule sur le fichier si cela peut t'aider (sur le côté ou en dessous).

Je comprends bien la logique de plage, mais j'ai de la difficulté à me l'approprier et à la corriger.
Il y a aussi la détection du mois (nota : on onglet comporte aout mal orthographié mais sans conséquence).
Maintenant, il y a cette affaire de temps partagé entre plusieurs services, de nouveau critères aussi ... c'est évolutif et c'est normal.

Je te propose un virage à 180° dans le décompte des absences = compiler de façon brute tous les motifs avec noms, date, matin/apm dans une pseudo-base d données. Ce sera plus souple et le calcul se fera via un TCD.

N'hésite surtout pas à rejouté des lignes colonnes, formule sur le fichier si cela peut t'aider (sur le côté ou en dessous).

Sur quel fichier ?

Ce qui m'importe c'est le résultat, si l'on passe par un tcd avec des données brut ça me va tout à fait, on pourra revenir sur un format plus facile à traiter.

Tu peux modifier dans le fichier 'calculateurabsenteisme" comme tu le souhaites, Par contre dans le "planning-Rh-Informatique" c'est plus compliqué c'est un fichier Rh donc difficile de tous modifié mais j'ai quand même la possibilité d'ajouter des colonnes lignes à droite ou en bas du calendrier.

Mon unique priorité, c'est de savoir combien de jours ont été loupés pour chaque mois sur chaque service. En prenant en compte ceux qui travaillent en temps partiels.

ok

Faudra prévoir à terme une formation à excel pour le service RH, leur faire oublier crayon, papier, gomme et coder correctement les valeurs dans les cases

Pour le moment, j'en suis là ... il faut maintenant que j'ajoute la notion de service (et de coeff 0,5 pour matin/apm)

edit : mise à jour dans les publications suivantes

ok

Faudra prévoir à terme une formation à excel pour le service RH, leur faire oublier crayon, papier, gomme et coder correctement les valeurs dans les cases

On est bien d'accord !

En tout cas merci du temps que tu consacres au fichier, je vais regarder demain matin les résultats sans les coeff et les services .

Je ne connaissais pas le codage pour un tcd, ça va m'aider dans de future projet !

Pour la version déjà postée, il faut passer à 13 feuilles, et modifier l'année en 2020

For m = 1 To 13

J'ai avancé pour la version prenant en compte l'affectation aux différents secteurs :

capture d ecran 142

mais cette version est un peu lente, je travaille sur une autre mais je rencontre un problème de date ... à suivre

Version quasi-instantanée

Nota : il faut que le fichier de base soit bien rangé mois par mois - j'ai une version évoluée qui contrôle cela en se basant sur la présence de "22 Mois" où Mois est le mois en cours, sauf que août est mal orthographié et donc bloque la suite.

capture d ecran 143
Rechercher des sujets similaires à "calculateur absence fichiers"