Automatiser le placement de personnel en fonction de la période d'emploi

Tophe2

XLDnaute Impliqué
Bonjour le forum,

J'ai un fichier (que je dupliques en fonction des centres environ 35 actuellement) que j'utilise à chaque période de vacances scolaire.

Il y a 3 onglets un onglets "registre" où les directeurs demandent du personnel sur certainement période une ligne est égal à un contrat.

Si la demande est validé nous la passons en "Procédure en cours" et nous plaçons l'animateur ou Adjoint/directeur ou surveillant de Baignade dans l'onglet "Visuel" sur les semaines où il doit être affecté, avec de noté le 1er jour de contrat sur la 1er semaine d'emploi et sur la dernière semaine le dernier jour du contrat.

Il y a également un onglet "Effectif" en lien avec l'onglet "Visuel" qui nous informe du nombre d'enfants par semaine et donc des animateurs qui doivent être présent (maternelles : 8 enfants 1 animateur, primaires : 12 enfants 1 animateurs).

En Blanc dans l'onglet "Visuel" les animateurs à recruter semaine par semaine.

Existe t il une solution pour automatiser le placement des animateurs semaine par semaine, c'est à dire le passage de l'onglet "registre" à l'onglet "Visuel" c'est à dire la copie de la colonne A, B et C de l'onglet "Registre" en fonction des dates d'emploi.
et est il aussi possible de griser automatiquement les lignes de l'onglet "Visuel" en fonction du prévisionnel inscrit sur l'onglet "Effectif".

Je joins à ce mail une copie du fichier qui peut contenir au maximun 1 Directeur, 3 adjoints, 1 surveillant de Baignade, 30 animateurs et 1 agent de collectivité.

Merci par avance pour votre aide

Cordialement et bonne journée

Christophe.
 

Fichiers joints

CHALET53

XLDnaute Barbatruc
Re : Automatiser le placement de personnel en fonction de la période d'emploi

Bonjour,
Un essai avec une procédure événementielle sur la feuille Registre. Dès qu'une modification intervient dans cette feuille, il y a mise à jour de la feuille visuel
Quelques modifs dans la feuille registre :
Remplacement de la colonne observation par une colonne statut (pour pouvoir ne traiter que les animateurs)
Une liste des dates possibles (en entrée et en sortie) pour éviter les erreurs

Je ne comprends pas les règles de mise en gris de la feuille Visuel (A préciser)

a+
 

Fichiers joints

Tophe2

XLDnaute Impliqué
Re : Automatiser le placement de personnel en fonction de la période d'emploi

Bonjour CHALET53,

Je viens d'essayer ta proposition.

Il faut que le nom de l'animateur soit reporté dans la ou les colonnes concernés.
je m'explique si l'animateur est affecté du 11/07/11 au 18/07/11 il faut que le nom apparaisse en colonne J la qualification en colonne K et le type de contrat en colonne L pour la date de début c'est ok puis idem pour la semaine d'après c'est à dire le nom en colonne R la qualif en colonne S et le type de contrat en colonne T date de fin OK.

A priori dans ton fichier les noms sont présents uniquement en colonne B et c'est les dates qui se placent au bon endroit peut on mettre les noms qualif et type de contrat dans les différentes colonnes ?.

C'est pour que le directeur puisse voir semaine par semaine son équipe avec les noms et qualifications et tout cela en fonction du nombre d'enfants.

La mise en gris : il y a sur dans le fichier un onglet "Effectifs" une ligne Prév Mater (prévision Maternelle) et une ligne Prév Prim (prévision primaire) en fonction des chiffres notés est il possible de griser les lignes que nous n'avons pas besoin exemple : 25 maternelles 4 animateurs et 30 primaires 3 animateurs un total de 7 animateurs donc les 24 lignes d'après en gris.

Merci pour ton aide
Bonne Journée
Christophe.
 

CHALET53

XLDnaute Barbatruc
Re : Automatiser le placement de personnel en fonction de la période d'emploi

Quand on a besoin de 7 animateurs, quelle est la logique qui aboutit à griser 24 lignes?
supposons qu'il en faille 24, ce sont les lignes 15 à 38 qui doivent être grisées et cela sur toutes les colonnes ou semaine par semaine
A suivre
 

Tophe2

XLDnaute Impliqué
Re : Automatiser le placement de personnel en fonction de la période d'emploi

Re,

Si nous avons 7 animateurs il faut griser les lignes 22 à 45 (soit animateur 8 à l'animateur 31) car cela veut dire pas d'animateur à affecter et comme il peut y avoir plus ou moins d'enfant chaque semaine cela est à faire toutes les semaines.

En gris pas d'animateur à affecter en blanc nous libérons les places pour affecter un ou plusieurs animateurs.

Peut être alors dire mettre en blanc tant de ligne en fonction du prévisionnel enfant, il est en lien dans l'onglet "Visuel" au dessus de chaque semaine avec un total animateur primaire et mater.

C'est pour ça que s'il y a un principe pour automatiser c'est bien car plusieurs centres et donc beaucoup de semaine.

Cordialement
Christophe.
 
Dernière édition:

CHALET53

XLDnaute Barbatruc
Re : Automatiser le placement de personnel en fonction de la période d'emploi

Re,

Lorsque l'on modifie un nombre dans la feuille Effectifs, la mise à jour du grisage est lancée
J'ai modifié les formules dans Visuel pour calculer en arrondi supérieur les besoins en animateurs
Le grisage est fonction des prévisions : les inscriptions réelles ne sont pas prises en compte
Les procédures sont écrites sur la base de la structure actuelle des feuilles du fichier. La moindre modification dans la structure nécessiterait des modifications dans les procédures.

Déjà regarder si le principe est bon
 

Fichiers joints

Tophe2

XLDnaute Impliqué
Re : Automatiser le placement de personnel en fonction de la période d'emploi

Re,
Pour griser les cellules ça correspond à mon utilisation à moi de bien gérer l'arrondi car à des moments nous pouvons réfléchir à l'affectation d'un animateur mais ça sera à moi de faire attention, super travail.

Concernant l'affectation des animateurs en fonction de la période chez moi j'ai un Bug qui me renvoi sur le Stop dans ta procédure et le met en jaune:

Code:
Sub Affectation_Visuel()
Sheets("Visuel").Activate
Stop < --------  ici
For j = 15 To 45
If Cells(j, 2) = "" Then Cells(j, 2) = np
If Cells(j, 2) = np Then
'Affectation date début
.......
Par contre Si je supprime le "stop" et que je lance ta proposition tout à l'air de fonctionner sauf que M. Durand qui doit commencer à travailler le 18/07 je vois dans l'onglet visuel qu'il apparait dans la 1er colonne comme s'il travaillait à partir du 04/07.
Est ce parce que j'ai supprimé le "stop" ? et fallait il supprimer le "Stop" ?

Donc je n'ai pas pu voir si cela fonctionné correctement.
Peux tu me dire quoi faire pour le faire fonctionner.

Merci
Cordialement
Christophe.
 

CHALET53

XLDnaute Barbatruc
Re : Automatiser le placement de personnel en fonction de la période d'emploi

Re,

Oui, il fallait supprimer le stop (c'est un point d'arrêt pour avancer pas à pas ensuite)
j'ai besoin sur la feuille Visuel de tous les animateurs dans une même colonne pour les affecter ensuite en fonction du calendrier.
J'ai opté pour la première colonne (animateur1 à 35) qui n'a pas besoin d'être renseignée. Je l'ai remise à blanc et elle est alimentée en fonction de la création d'individus dans la base Registre.

Qu'en penses-tu ?
 

Fichiers joints

Tophe2

XLDnaute Impliqué
Re : Automatiser le placement de personnel en fonction de la période d'emploi

Re,

Pour ma part dans le fichier j'ai besoin de la colonne et de l'identification, animateur 1 animateur 2... car j'ai un cache qui souffre pour afficher des éléments comme les téléphones et autres qui sont masqués à l'origine pour que les directeurs puissent les appeler, c'est vrai que je l'ai enlevé dans ce fichier.
Mais en même sur une ligne il peut y avoir plusieurs animateurs donc de mettre un nom dans cette colonne cela ne peut peut être pas fonctionner.

Dans le fichier que tu viens de m'envoyer la semaine du 18/07 au 22/07 il manque un animateur sur la 1er ligne sur ton principe à priori il ne peut pas y avoir deux noms mais peut être que je me trompe.

N'est il pas possible de garder la 1er colonne en masquant une colonne beaucoup plus lointaine la denière par exemple, mais il faut que je puisse mettre chaque semaine le bon nombre d'animateur c'est vrai que régulièrement sur la même ligne il peut y avoir plusieurs noms.

Merci
Bonne soirée
Christophe.
 

CHALET53

XLDnaute Barbatruc
Re : Automatiser le placement de personnel en fonction de la période d'emploi

Bonjour,

j'ai essayé de prendre en compte les points demandés
J'ai résolu le problème des lignes blanches (ex DURAND) par un tri sur chaque zone
Les procédures sont complètement dépendantes de la structure des feuilles : la moindre insertion de lignes ou de colonnes impliquera de les modifier

a+
 

Fichiers joints

Tophe2

XLDnaute Impliqué
Re : Automatiser le placement de personnel en fonction de la période d'emploi

Bonjour CHALET53,

Super travail, tout fonctionne correctement.

Peux tu m'expliquer ce que je dois modifier :

Pour les dates à venir vacances de la Toussaint, Noël, Février ...... l'endroit ou je peux saisir les nouvelles dates, est ce que je peux juste modifier la colonne J et K de la l'onglet Registre ou dois je aussi modifier d'autres éléments y compris dans la feuille " Visuel " ?.

J'ai regardé pour augmenter le nombre de ligne sur la feuille Registre il faut modifier l'écriture suivante " For i = 3 To 33 " en " For i = 3 To 34 " et un peu plus bas mettre 34 à la place de 33.

Puis je ajouter une colonne dans la feuille Registre après celle identifiée " Statut " type "Observation" mais qui ne doit pas être recopiée dans une autre feuille juste pour info sur cette feuille ? ou faut il modifier le code pour faire cela ?

J'ai également une question concernant la feuille " Visuel " la colonne BO doit elle être apparente ou peut on la masquer ?

Si je dois créer une 9ème semaines peux tu me dire l'endroit à modifier sur ton code ou ce que je peux faire ?

Ou plus simplement des explications sur l'écriture que j'ai imprimé.

Magnifique travail, Merci encore.

Bonne Journée
Christophe.
 

CHALET53

XLDnaute Barbatruc
Re : Automatiser le placement de personnel en fonction de la période d'emploi

Re,
Pour la Toussaint :
Les dates de la feuille Visuel (début et fin de semaine) en ligne 3 ont été mises à jour manuellement par tes soins : je n'y ai pas touché
Pour la Toussaint, il faut les renseigner manuellement (à partir de la première semaine en colonne E (et J si nécessaire) et remettre les autres à blanc
Bien synchroniser ces dates avec celles de la feuille Registre en colonne J et K
Les colonne C et K relatives au nombre prévisionnel seront automatiquement renseignés dès lors que la feuille Effectifs sera renseignée
Mêmes réserves pour Noël et ....

Feuille Registre :
Tu peux ajouter une colonne H : Observations
Rajouter des lignes : deux précautions
celle que tu mentionnes : je peux automatiser ce chiffre en calculant la dernière ligne renseignée sur la feuille Registre)
et La procédure événementielle liée à la feuille Registre : Tu y accèdes en positionnant le curseur sur le nom de l'onglet Click droit et visualiser le code (remplacer G35 par Gxx)

La colonne BO peut être masquée
Intégrer une 9ème semaine :
A partir de BN, La colonne BO sera décalée d'autant et modifier la procédure Visuel en conséquence
Si c'est une limite (9 semaines), je peux le faire : toutefois, une question toute bête, je ne sais plus comment débloquer la limite en colonne BO
Des tests s'imposent
Je peux t'envoyer une nouvelle version dès que possible
a+
 

CHALET53

XLDnaute Barbatruc
Re : Automatiser le placement de personnel en fonction de la période d'emploi

Re,

M'absentant pendant quelques jours, je ne pourrai revenir sur ce fil au mieux Lundi ou Mardi
bon courage

a+
 

Tophe2

XLDnaute Impliqué
Re : Automatiser le placement de personnel en fonction de la période d'emploi

Bonjour CHALET53,

Tout d'abord désolé du retard, j'ai eu un petit contre temps.

Il me semble que semaine de vacances cela me semble vraiment un maximun, maintenant peut être qu'il y aura un moment ou nous aurons besoin de plus d'animateurs !! pour l'instant 30 c'est bon.

pour libérer la colonne BO, il faut la sélectionner entièrement et en gardant le clic gauche de la souri appuyé se déplacer légèrement sur la droite, puis faire bouton droit de la souri et afficher, mais je t'ai mis le fichier en démasquant les colonnes.

Voilà, bon weekend et à lundi ou mardi en te rémerciant pour l'aide que tu m'as apporté.

Bonne Journée
Christophe.
 

Fichiers joints

CHALET53

XLDnaute Barbatruc
Re : Automatiser le placement de personnel en fonction de la période d'emploi

Bonjour,

ci-joint un nouveau fichier intégrant 9 semaines
Un contrôle de cohérence sur les dates saisies en J et K. Il peut être supprimé.
Une intervention sur la feuille Registre (colonne A à G) entraine :
Mise à jour des dates sur la feuille Effectifs (entête) et sur la feuille Visuel (ligne 3)
Mise à jour des intervenants sur la feuille Visuel

a+
 

Fichiers joints

Tophe2

XLDnaute Impliqué
Re : Automatiser le placement de personnel en fonction de la période d'emploi

Bonjour CHALET53,

C'est super et merci pour ton aide tout est automatisé.

Si je souhaite changer l'emplacement des dates sur la feuille registre mais en les laissant sur cette même feuille, peux tu me dire les endroits à modifier dans ton code.

je pense ici
Code:
If Not Application.Intersect(Target, Range("J3:K11")) Is Nothing Then
Code:
For Each cel In Range("J3:J11")
Code:
For Each cel In Range("K3:K11")
Mais il doit y avoir d'autres endroits si cela ne te dérange pas, je te remercie pour tout.

Bonne Journée
Cordialement
Christophe.
 

CHALET53

XLDnaute Barbatruc
Re : Automatiser le placement de personnel en fonction de la période d'emploi

Bonjour,

Oui mais également dans le module1, sub maj_dates
ceci à modifier (10= colonne J et 11= colonne K) :

For i = 3 To 11
If Cells(i, 10) = "" Then i = 11: GoTo suite
datdeb(j) = Cells(i, 10): datfin(j) = Cells(i, 11)
j = j + 1

suite:
Next i

Bon courage
 

Discussions similaires


Haut Bas