Bonjour,
Je cherche à réaliser l'algorithme suivant en VBA (travail sous Excel):
J'ai x positions de travail à effectuer. Ces positions ne peuvent être vide. Elles sont numérotées en démarrant de 1 à x, mais certaines positions particulières portent des numéro spécifiques (9001;9002 etc..). Ces positions de travail sont regroupées par équipe.
J'ai des agents dont la fonction est d'effectuer des remplacements (FE,RE,RB,FQ) sur ces positions en cas d'absences (programmées ou non).
Un agent qui ne connaît pas une position ne peut être mis sur celle ci. Il y a donc un tableau de connaissances des positions de travail.
Les agents de remplacement ont des priorités en terme de remplacement. Lors d'un remplacement dans une équipe, c'est le RE en priorité puis le RB, le FQ et enfin le FE. A noter que ce dernier (FE) a, certains jours, une position de travail sur laquelle il est prioritaire, mais qui exceptionnellement pour des raisons de services peut être déplacé sur une autre Pt s'il n'y a que lui de présent et ayant la connaissance de la Pt à effectuer.
Via mon planning, j'ai les informations suivantes : agents présent, positions de travail à remplacer et tableau de connaissance des positions de travail par les agents remplaçants.
Je n'arrive pas à élaborer un algorithme pour calculer tel remplaçant va faire telle position de manière quotidienne, en respectant les critères exposés ci dessus. De plus, plusieurs solutions sont possibles respectant tous les critères.
La cerise sur le gâteau, ce serait d'inclure un tableau de préférence au niveau des agents de remplacement. Exemple un RE et un RB doivent remplacer la PT05 et la PT07. Les deux ont la connaissance des PT. Mais le RE est plus à l'aise sur la PT05 et le RB sur la PT07. Donc si les deux solutions sont possibles, retenir celle en phase avec les préférences des agents.
Je remercie d'avance tous ceux qui se pencheront sur ce problème que je n'arrive pas à résoudre depuis plusieurs semaines.
-----