Mettre en couleur les jours d'absences des employés
RésoluCRCA79 Messages postés 93 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Dans mon tableau dans la feuille "Récap heures mécanos FEURS", je souhaite mettre en couleur les cellules de la ligne 120 - congés par rapport au date de congés de la feuille "congés". Merci pour votre aide.
Comment joindre le fichier excel ?
Windows / Chrome 148.0.0.0
- Forumexcel
- A quoi servent les boutons de couleur sur une telecommande - Guide
- Mettre a jour chrome - Accueil - Applications & Logiciels
- Boite a couleur - Télécharger - Divers Photo & Graphisme
- Compte facebook suspendu 180 jours - Guide
- Nombre de jours entre deux dates excel - Guide
11 réponses
Bonjour,
Soit tu supprimes les fusions des cellules qui contiennent les noms et tu remplis chaque cellule, soit tu utilises (en colonne AP la fonction SCAN (Excel 2024).
https://www.swisstransfer.com/d/79b88451-3fb9-4c44-9c13-4d9382bb3c36
Daniel
Boinjour CRCA
Si tu veux quelque chose d'automatique, il va falloir travailler autrement.
Tu a créé un tableau et tu voudrais l'utiliser comme une petite base de données. Il faut pour cela créer un VRAI tableau Excel, sans groupage de cellules.
Dans un vrai tableau Excel, si tu sélectionnes une ligne, tu dois avoir toutes les infos. Or, là, si je sélectionne par exemple la ligne 10, on a 120 Congés et c'est tout. On n'a pas le nom diu salarié, ni son numéro. Ne jamais utiliser le groupage de cellules.
Bref, il faudrait tout revoir.
m@rina
Bonjour,
Pour mettre en couleur les jours d'absence des employés dans Excel, utilise la mise en forme conditionnelle pour colorer automatiquement les cellules selon le type d'absence (ex: vert pour congé, rouge pour absence non justifiée).
Bonjour,
Pour mettre en couleur les jours d'absence des employés dans Excel, utilise la mise en forme conditionnelle pour colorer automatiquement les cellules selon le type d'absence (exemple : vert pour congé, rouge pour absence non justifiée).
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionBonjour à tous,
Pour partager fichier, clique sur :
https://www.swisstransfer.com/fr-fr
Clique sur "Cliquer pour ajouter vos fichiers". Vérifie que "Lien" est bien en vert, sinon, clique dessus. Clique sur "Transférer". Clique sur "Je ne suis pas un robot". Copie le lien affiché et colle-le dans ta réponse.
Daniel
Bonjour,
Si on n'a pas Excel 365, c'est mon cas, c'est plus compliqué.
Comme la feuille de Total Heures est en avril, j'ai volontairement mis les jours de congés à tester aux mêmes dates, mais en avril.
Le deuxième schmilblick est qu'à ma connaissance on ne peut pas entrer une formule matricielle dans une formule conditionnelle.
Mettre en D10 de Total Heures:
=N(OU((D5>=Congés!$C$6:Congés!$C$7)*(D5<=Congés!$D$6:Congés!$D$7)))
Valider la formule matricielle par CTRL-Shift-Entrée
Et comme le jour en question (6 avril) est bien de congé, le résultat est 1, pas terrible.
Tromper l'ennemi par une mise en forme conditionnelle si la valeur de la cellule D5 est comprise entre 1 et 1, couleur choisie, appliquer cette même couleur à la police.
Si test accepté, étendre la mise en forme conditionnelle à toute la ligne et tirer la formule à droite, mais je ne suis pas certain que la copie valide la formule matricielle qu'il faudra alors à nouveau confirmer à chaque fois par CTRL-Shift-Entrée, pénible...
Bonjour,
J'ai pour ma part compris que c'est cela qui a été demandé.
Je n'ai appliqué qu'à D10 et à la plage de congés C6:D7 mais qu'il faut bien sûr étendre en prévision d'autres congés.
Mais je peux me tromper.
https://cijoint.org/r/9V1bGn9c#FJQKwhikx0DUKSSK2QDyayTN09iLZ+5NndmJsyfrXvo=
... En supposant que cette ligne existe pour tous les noms :
https://www.swisstransfer.com/d/d4d2b552-0542-4651-bf11-2402a6a1372c
Daniel
Bonjour à tous,
Pourquoi je ne vois pas la réponse de m@rina dans ce fil ?
? Moyen, ce forum !
Daniel
Bonjour,
Dans le fichier joint, il ne faut pas tester la valeur de la cellule de la ligne 120 - CONGES, car ces cellules sont vides. Il faut tester si la date de l’en-tête est comprise entre la date de début et la date de fin dans la feuille Congés.
Comme les noms en colonne B sont fusionnés, je conseille d’utiliser une petite colonne d’aide, par exemple AP, qu’on pourra masquer ensuite.
En AP7, mettre :
Nom salarié
En AP8, mettre :
=SI($B8<>"";$B8;AP7)
Puis recopier vers le bas jusqu’à la dernière ligne du tableau.
Ensuite, vous sélectionnez la plage à colorer, par exemple :
D8:AL53
puis aller dans :
Accueil > Mise en forme conditionnelle > Nouvelle règle > Utiliser une formule
et mettre cette formule :
=ET($C8="120 - CONGES";NB.SI.ENS(Congés!$A:$A;$AP8;Congés!$C:$C;"<="&D$7;Congés!$D:$D;">="&D$7)>0)
Choisir ensuite la couleur de remplissage souhaitée.
J'explique un peu :) :
D$7 correspond à la date de la colonne en cours. En se décalant vers la droite, Excel testera automatiquement E$7, F$7, etc...
$AP8 récupère le nom du salarié, même si les cellules en colonne B sont fusionnées.
NB.SI.ENS vérifie que le salarié existe dans la feuille Congés et que la date du jour est comprise entre DEBUT et FIN.
Dans le fichier fourni, pour MANGAVEL PASCAL, la règle colore donc les jours du 04/05 au 06/05, puis le 15/05.
À noter : actuellement, la ligne 120 - CONGES n’existe que pour MANGAVEL PASCAL. Pour appliquer le même principe aux autres salariés, il faut aussi prévoir une ligne 120 - CONGES dans chaque bloc salarié, ou adapter la plage/règle selon la structure définitive du tableau.
Voilà ce que je pense souhaitez en espérant qu'il n'y ai pas d'erreur. : https://cijoint.org/r/cfGUqbAF#r9S3Utp/7OAgNMRAASRii5pcQLs/JVpPMri2cPH4KnQ=
Bonjour,
Pourquoi pas, mais quelques remarques.
On suppose qu'il n'y a pas qu'un salarié à avoir des congés, soit donc le tableur qui nous a été livré est un test, soit il s'agit de congés exceptionnels l'entreprise fermant 5 semaines par an, mais on ne peut pas exclure que le premier cas se produise pour d'autres salariés.
On ne comprend pas l'existence de la ligne 11 et il me paraît en effet plus sain plutôt que de tester l'existence de la ligne 10 ou son équivalent de systématiquement l'introduire pour tous les salariés à la même position.
La voie que j'ai utilisée et qui a sûrement d'autres défauts ne teste pas le nom du salarié mais seulement les positions des cellules destination et source, et ne pose donc pas le problème des cellules fusionnées qu'il est de toute façon de bon aloi de ne pas utiliser.
Bonjour,
Effectivement, le fichier fourni n’est pas homogène : la ligne 120 - CONGES n’existe actuellement que dans le bloc de MANGAVEL PASCAL.
Ma remarque ne voulait pas dire qu’un seul salarié pouvait avoir des congés, mais simplement que, dans la structure actuelle du tableau, Excel ne peut colorer automatiquement une ligne 120 - CONGES que si cette ligne existe dans le bloc du salarié concerné.
Dans mon essai, j’ai donc traité la demande telle qu’elle apparaît dans le fichier fourni : colorer la ligne 120 - CONGES par rapport aux dates saisies dans la feuille Congés.
J’ai utilisé une colonne d’aide masquée pour récupérer le nom du salarié malgré les cellules fusionnées, puis une mise en forme conditionnelle basée sur le nom du salarié et la date de la colonne. L’intérêt est que la règle ne dépend pas de la position des lignes dans la feuille Congés.
Une solution basée uniquement sur les positions peut fonctionner si le tableau reste strictement aligné, mais elle me semble plus fragile si l’on ajoute d’autres salariés, d’autres périodes de congés ou si l’ordre change dans la feuille Congés.
Pour une solution durable, je suis d’accord : le plus propre serait d’uniformiser chaque bloc salarié en ajoutant systématiquement une ligne 120 - CONGES au même endroit, puis d’appliquer la même règle de mise en forme conditionnelle à l’ensemble du tableau.
Concernant la ligne 11, je ne l’ai pas utilisée ; elle semble être une ligne vide ou de séparation dans le fichier transmis.
Cdlt.
On a affaire à une TPE/PME, ce n'est tout de même pas le diable d'entrer une ligne congés pour chaque salarié qui dans mon cas mais aussi dans le tien va échouer parce qu'il faudra après avoir recopié la ligne 10 à chaque ligne de salarié soit modifier les plages concernées de la feuille congés, soit modifier cette feuille elle-même.
On peut toujours créer une feuille congés propre à chaque salarié mais, dans le bazar ambiant le plus simple pour ne pas tout reprendre est de la modifier en copiant les colonnes A-D en E-H, I-L...pour chaque nouveau salarié puis en corrigeant les données copiées, puis en conséquence les plages comme évoqué précédemment.
