Suivi du planning du personnel

bonjour,

merci pour cette réponse, je me sens moins coupable

pouvez vous m'expliquer en quelles mots les différentes routines de votre programme, mon but étant de mieux comprendre pour essayer d'évoluer:

  • vérification code d'activité valeur
  • comments move size
  • somme si couleur
  • sélection dans la plage

merci à vous d'avance

cordialement

jb

Bonjour,

- vérification code d'activité valeur : ce code permet de vérifier le code activité...

Non sérieusement, elle est faite pour vérifier la non redondance des couleurs de code activité et la non redondance des intitulés de code activité. Elle est déclenchée lors du changement de sélection de cellule :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

En effet il n'y a pas de détection de changement de couleur de cellule, mais alors si on bouge de cellule sélectionnée alors la procédure est lancée...

Au niveau des couleurs, on vérifie grâce au "tablo_couleur" s'il y a eu un changement, si c'est le cas on "scanne" pour vérifier qu'elles sont uniques. Ensuite on demande (si tout va bien) s'il faut initialiser le planning avec les nouvelles couleurs, si oui la procédure le fait, si non on quitte la procédure (il y aura alors des manque au niveau du récap).

Au niveau des codes c'est la procédure événementielle :

Private Sub Worksheet_Change(ByVal Target As Range)

qui est lancée suite au changement d'une valeur sur la feuille planning

Là on vérifie la non redondance des code, s'il y a redondance, alors on le signale et ensuite on fait un "Undo" qui permet de revenir en arrière, sinon la valeur du code est prise en compte et on demande s'il faut initialiser le planning avec cette nouvelle valeur.

Si on initialise pas alors il y aura "des manques" au niveau du "récap"

- comments move size : le planning permet de mettre des commentaires sur les cellules.

Si vous avez beaucoup de personnels et beaucoup de commentaire, alors lors des tri sur le tableau il se peut que Excel n'arrive plus à gérer l'emplacement des commentaires et provoque une erreur. Pour cela la procédure lui dit que tous les commentaires sont "mobiles". En effet lorsqu'il y a peu de commentaire, Excel ne les déplace pas réellement lors des tris, il garde en mémoire leur emplacement "d'origine", mais s'il y en a trop alors ça coince... Du coup en lui disant qu'ils sont mobiles on l'oblige à mettre à jour sa base mémoire des emplacement. Cela évite les bugs.

- somme si couleur : elle permet de comptabiliser les cellules en fonction de leur couleur de fond, comme un code activité = une couleur, en comptant les couleurs on connaît le nombre de jour de l'activité.

L'avantage c'est que l'on peut mettre dans la cellule de couleur rouge "absence" la raison de cette absence et ce n'est pas forcément la même raison pour tout le monde, donc 1 rouge = 1 absence mais elle peut être égale à "maladie", "stage", "dècés familiale" etc...

- sélection dans la plage : c'est une procédure qui permet de tester si la sélection fait partie d'une plage déterminée.

La sélection est l'ensembles des cellules sélectionnées, la plage est le tableau planning.

S'il y "match" à 100% cela renvoie "TRUE" sinon "FALSE"

@ bientôt

LouReeD

re,

un grand merci pour touts ces explications , je vais les digérer

encore merci

jb

Bonjour,

Bonne digestion à vous alors

@ bientôt

LouReeD

jeromeB, bonjour,

Beaucoup de retard dans mes réponses...

@ bientôt

LouReeD

Bonsoir,

@LouReed J'ai une question concernant SPASME.

Lorsque je tente de faire un copier-coller d'une case du planning vers un autre feuillet cela ne fonctionne pas…

Je ne parvient pas à trouver ce qui l'empêche dans votre code…

Sinon super application. Bon… je l'ai largement modifiée pour arriver à ce que je recherche mais la base est terrible ! Bien plus légère que APACHE qui était trop complexe pour l'usage dont j'ai besoin.

Merci d'avance de de ta réponse

Bonsoir,

merci pour les encouragements !

Et je vous le dis, vous avez bien fait de vous l'approprier et de le modifier pour qu'elle corresponde à votre besoin.

Sinon pour votre problème, je pense, c'est due "à l'ensemble" des codes issus de la surveillance événementielle de la feuille planning et à une particularité d'Excel qui fait qu'au lancement d'une macro, le presse papier se vide...

Ne connaissant pas le but de ce copier / coller, je ne peux vous donner de solution, ci ce n'est une "fastidieuse" :

clic droit sur l'onglet "planning", dans le menu contextuel, cliquer sur "afficher le code". Sur la fenêtre du code faite un [Ctrl] + A puis dans la barre de menu d'édition cliquer sur l'icône "mettre en commentaire".

Attention ! cet icône bien que très utile, n'est pas afficher automatiquement !

Il faut personnaliser la barre pour le rendre accessible rapidement.

Et son frère bien évidemment, car pour revenir à une situation normale il faudra faire l'inverse.

@ bientôt

LouReeD

Re bonsoir LouReed,

Je n'ai pas tout saisi dans votre explication…

La mise en commentaire du code du feuillet planning fait crasher le reste…

J'ai simplement besoin de réaliser un copier-coller du planning vers un autre onglet. Je ne pensais pas que ce serait si compliqué.

Le truc c'est qu'en ouvrant le 2e onglet dans une nouvelle fenêtre ça marche normalement…

Je pense donc qu'il est possible de déverrouiller cette fonction sans avoir à ouvrir une nouvelle fenêtre.

Merci de votre réponse rapide en tout cas. Je vais continuer à chercher.

Alors clic droit sur le nom de la feuille planning, puis copier / déplacer, puis choisir l'emplacement dans le fichier courant, ou bien choisir un nouveau classeur, cocher "créer une copie", puis valider.

@ bientôt

LouReeD

@ LouReed

Je me suis mal exprimé…

Je ne souhaite pas faire une copie intégrale de l'onglet planning mais faire une copie de certaines cases du planning vers un autre onglet.

Voilà le fichier joint :

24spasme-v3-0-test.xlsm (127.53 Ko)

J'ai mis en commentaire tout le code de la feuille planning, elle redevient une feuille normale,

j'ai créé une nouvelle feuille, j'ai copié toutes les colonnes du mois de janvier sur planning, je suis aller sur la nouvelle feuille et j'ai collé, tout fonctionne car le code vba est neutralisé.

Pour revenir au fonctionnement normale, je retourne sur le code VBA je sélectionne tout et je retire les guillemets

Les icônes à mettre en place sont ceux-ci :

sans titre1

Les deux premiers sont fait pour mettre ou enlever l'indentation (le décalage du code) les deux autres sont fait pour mettre "en masse" des guillemets afin de neutraliser de grande zone de code.

@ bientôt

LouReeD

Bonjour,

Je reviens vers vous afin de chercher une solution mais elle est capilo-tractée

Je m'explique, votre solution comme la mienne consistant à suspendre le code vba (en le mettant en commentaire ou en utilisant le débogage) fonctionne mais elle n'est absolument pratique. En effet, j'ai besoin d'extraire des renseignements du planning en fonction de la discipline (j'ai déjà la macro de sélection sous condition pour ça) et de les coller dans un autre feuillet.

Je cherche donc dans 2 directions :

  • La première, remettre en fonction le copier-coller.
  • La deuxième, savoir si il est possible d'appeler le mode débogage par macro et le désactiver dans la foulée une fois le copier-coller effectué (j'avais dit que c'était tiré par les cheveux).

A votre bon cœur pour les solutions

Bonsoir,

voir le fichier joint :

19capilotracte.xlsm (15.50 Ko)

Il est basé sur l'instruction VBA Application.EnableEvents qui lorsque qu'elle est égale à False fait que la feuille ne réagit plus à ce qui se passe sur elle, mais elle n'empêche pas le fonctionnement des "boutons" liés à des macros.

Du coup un bouton arrêt de surveillance, vous faite vos copier/coller sans déclencher les codes de SelectionChange ou Change de la feuille, puis une fois le copier/coller effectué, vous cliquer sur le bouton de remise en route, la surveillance redémarre.

Pour l'exemple, les deux sub de surveillance ci-dessus sont liées à des messages box qui affichent que la sélection a changé ou bien que la valeur a changé.

Je vous laisse le soin de faire l'adaptation, et si vous n'y arrivez pas alors revenez...

@ bientôt

LouReeD

Bonjour,

Finalement je suis passé par la fonction "Recopier" du Menu>Edition.

Cela me permet de l'automatiser en l'intégrant à une macro.

Merci beaucoup en tout cas pour ta réactivité et tes précieux conseils.

Bonjour,

Ok, mois qui me suis arraché pas mal de cheveux sur cette affaire !

Après suivant le but, la position de départ et d'arrivée de ce que vous souhaitiez faire, autant un code d'automatisation était possible...

@ bientôt

LouReeD

Bonjour LouReed,

Tout d'abord un grand bravo pour votre outil Apaches_ultimate_gold_v1.2, il est tout simplement formidable !

Je l'ai paramétré conformément à mes besoins, tout fonctionne parfaitement, à l'exception de deux choses :

1/ La vue Planning ne reporte pas les activités saisies en mode Activités, et ça, pour le coup, ça manque vraiment.

2/ La feuille annuelle récapitulative ne reporte pas systématiquement les activités saisies (sur certains personnels, ça le fait, sur d'autres non). Ceci dit, pour l'utilisation que j'en ai, ce n'est pas indispensable.

Est-ce que j'aurais fait une mauvaise manipulation ? Y a-t-il une modification à faire dans le code VBA ? Au cas où, je ne sais pas créer de code, mais je sais les modifier si j'ai les indications.

Pouvez-vous m'aider ?

Cordialement

Bonjour,

merci pour ce retour !

Pour le point numéro 1 :

la vu planning est une vue de la position du personnel en fonction des dates, donc l'activité n'est pas affichée, cette vue permet une impression "condensée" du suivi, avec comme indication : case banche = personnel présent , case avec une information de position = position du personnel.

Mais à tout moment vous pouvez imprimer les activités, il suffit de sortir du mode planning et d'imprimer, le code gère dans la mesure du possible le fait de ne pas découper un mois en deux et de ne pas découper un personnel en deux. Dans ce mode là alors il y aura bien les cellules d'activité d'imprimées.

La vue annuelle, à l'origine, était faite pour avoir un récap des différentes position du personnel lors de l'année, une demande a été faite pour y inscrire une activité, c'est ce que j'ai essayé de faire, mais le soucis c'est que les cellules sont petites et comme je veux que le calendrier reste sur une page j'ai réduit cette activité à la dernière enregistrée sur la feuille planning.

Je vous avoue ne pas avoir suivi au plus près si cela fonctionnait correctement

Il faudrait que je me replonge dans le code.

Pour ce qui est de la retouche du code je vous souhaite bonne chance, car cette application est une de "mes débuts" et à l'époque la mise en place de commentaire n'était pas ma priorité !!!

Je le regrette bien car maintenant quand je dois replonger dedans je m'y perd ! Mais j'y arrive un peu.

Autre chose, vous êtes sur le fil de discussion de SPASME, ou maintenant "Suivi du planning du personnel", ce qui n'a rien à voir avec APACHES ou maintenant "Suivi du planning et de l'activité du personnel".

Mais ce n'est pas grave ! Comme à mon habitude je suis là !

N'hésitez pas si vous avez d'autre questions.

@ bientôt

LouReeD

Rechercher des sujets similaires à "suivi planning personnel"