XL 2010 gestion des astreintes

fabio

XLDnaute Nouveau
Bonjour a tous

je ne sais pas si vous pouvez m'aider, je cherche depuis pas mal de temps a créer automatiquement sois par formule ou macro la gestion des astreintes
je sèche complètement
ce tableau d'astreintes est rempli manuellement et entraîne souvent des conflits, le but est de remplir aléatoirement les personnes sur les deux colonnes B (perm matin) et C (perm après midi) du lundi au samedi en fonction des présents figurant sur les colonnes V à AJ

ou cela se complique est que chaque personne doit faire entre 3 et 4 astreintes par mois (les quotas figurent sur la ligne v3 a aj3

le tableau est en pièce jointe
si quelqu'un a une solution je lui tire mon chapeau
merci par avance
fabio
 

Pièces jointes

  • PERMS.xlsx
    29.6 KB · Affichages: 20

sylvanu

XLDnaute Barbatruc
Supporter XLD
Hello Fabio,
En PJ un exemple possible avec :
VB:
INDEX(Liste;1+MOD(A7;15))
et
INDEX(Liste;1+MOD(12+A7;15))
Le MOD se fait sur le jour, il permet de "tourner" sur la liste.( le +1 évite le zéro qui provoquerait une erreur sur l'index ). 15 est le nombre d'éléments dans la liste.
Pour le second un offset de 12 permet de répartir la distribution correctement.
 

Pièces jointes

  • PERMS.xlsx
    30.2 KB · Affichages: 10

fabio

XLDnaute Nouveau
Hello Fabio,
En PJ un exemple possible avec :
VB:
INDEX(Liste;1+MOD(A7;15))
et
INDEX(Liste;1+MOD(12+A7;15))
Le MOD se fait sur le jour, il permet de "tourner" sur la liste.( le +1 évite le zéro qui provoquerait une erreur sur l'index ). 15 est le nombre d'éléments dans la liste.
Pour le second un offset de 12 permet de répartir la distribution correctement.


bonjour sylvanu
c'est un bon début mais c'est pas bon regardes par exemple alain il,a des perms alors qu'il est en cp
et il se prend 5 perms
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
le but est de remplir aléatoirement les personnes sur les deux colonnes B (perm matin) et C (perm après midi) du lundi au samedi en fonction des présents figurant sur les colonnes V à AJ
Si vous n'expliquez pas les règles alors les résultats sont faux.
Comment puis je savoir ce que veux dire cp ?
Il vous suffit de reprendre les formules avec exclusions.
 

fabio

XLDnaute Nouveau
toutes les abréviations sont expliquées dans l'onglet paramètre (cp = congés payés)
sur les lignes des colonnes V a AJ chaque jour précisent les personnes disponibles qui peuvent faire des astreintes (les cases vides sont les personnes absentes)
Comment reprendre les formules avec exclusions sylvanu ?
merci de ton aide
 

soan

XLDnaute Barbatruc
Inactif
Bonsoir fabio,

Tu as écrit : « toutes les abréviations sont expliquées dans l'onglet paramètre (cp = congés payés) »

Je n'avais pas téléchargé ton fichier, mais j'avais quand même compris d'après le contexte de
ta phrase : « par exemple alain il a des perms alors qu'il est en cp et il se prend 5 perms ».

Merci quand même pour la confirmation de ton post #7. ;)

dis à Alain qu'après ses 5 perms, il est grand temps qu'il rentre pour
poursuivre le travail ! :p (toute l'équipe attends après lui ! :D) ;
mais comme on est Dimanche, ça peut attendre demain !


soan
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour tout le monde,
Dans certains métiers, on peut être d'astreintes tout en étant en congés. Ce n'était pas implicite.

Par formules je ne pense pas que cela soit faisable.
Donc du VBA, mais même là les conditions sont si complexes pour trouver l'optimum que j'ai été obligé d'avoir un module de ré équilibrage.
Il y a des points dans la matrice qui perturbait les choix donc je les ai supprimés sinon la personne est considérée comme absente. Si cela pose problème il faudra revoir le code.
Il faut appuyer sur le bouton Calcul astreintes pour lancer la macro, en ayant évidemment accepté les macros en préambule.
A tester pour voir.
 

Pièces jointes

  • PERMS3.xlsm
    37.9 KB · Affichages: 8

fabio

XLDnaute Nouveau
Bonjour sylvanu

ce n'est pas des astreintes ou on peu rester chez soi mais se sont des astreintes en entreprise
C'est presque parfait je te remercie grandement, mais pour que se soit top est il possible de faire des ajustements manuels dans les colonnes V à AJ et que cela se modifie automatiquement dans les colonnes B et C
cela pourrait modifier par exemple le cas de fabrice ou eric pour éviter des permanences en jours consécutifs

sans quoi je vous tire mon chapeau !!!!!!!
fabio
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
En PJ il faut faire les ajustements à la main puis appuyez sur Mise à jour manuelle. Cela remet à jour les listes en B:C ainsi que le nombre de perm par individu.
( attention, ne pas faire "glisser" les cellules dans le tableau mais effacer les noms et les réécrire, sinon ça casse la MFC. Mais sans incidence sur le fonctionnement de la macro )

Ceci dit, pour ERIC, DANIEL et ALAIN vous aurez du mal à faire mieux vu le nombre d'absence dans le mois.
 

Pièces jointes

  • PERMS4.xlsm
    42.3 KB · Affichages: 15

Discussions similaires

Statistiques des forums

Discussions
311 705
Messages
2 081 733
Membres
101 807
dernier inscrit
foued