Pour partager cette vidéo sur les réseaux sociaux ou sur un site, voici son url :
Sujets que vous pourriez aussi aimer :Affecter des tâches avec des listes déroulantes
Grâce aux astuces précédentes sur la construction de
listes déroulantes conditionnelles, nous allons maintenant exploiter ces acquis sur un
planning de travail. Il est question d'affecter des personnes à des tâches sur des jours précis. Mais ces tâches ne doivent pas être les mêmes selon qu'il s'agit d'un
jour de semaine ou d'un
jour de Week-End.
Et pour cela, un même jeu de
listes déroulantes est capable de s'adapter dynamiquement au contexte. Si l'opérateur clique sur un
jour de semaine, la
liste déroulante offre trois affectations différentes (Matin, Après-midi et Soir). S'il clique sur un
jour de Week-End, la
liste déroulante adapte ses propositions pour offrir trois nouvelles affectations (Astreinte, Télétravail et Deplcmt).
Classeur Excel à télécharger
Pour la mise en place de cette solution, nous suggérons d'appuyer l'étude sur un
classeur offrant notamment ce
planning déjà construit.
Nous débouchons sur la
feuille d'un planning pour un certain
mois de Juin. Les
jours sont énumérés en
colonne B tandis que les
salariés à affecter sont mentionnés en
ligne 3. Sur la droite, entre les colonnes J et K, figure un petit tableau résumant les tâches qu'il est possible d'affecter selon qu'il s'agit d'un
jour de semaine (Ouvré) ou d'un
jour de Week-End. Selon ces contraintes,
toutes les listes déroulantes du planning doivent être bâties ensemble. Elles doivent simplement s'adapter dynamiquement au contexte pour proposer soit les
tâches des jours ouvrés (Plage J4:J6), soit les
tâches des jours de Week-End (Plage K4:K6). Pour cela, il est question d'implémenter conditionnellement leurs
sources de données en faisant intervenir la
fonction Excel Si.
Multiples listes déroulantes conditionnelles
Nous avons donc besoin d'un jeu de deux listes déroulantes aux contenus différents à offrir sur toutes les cases des dates pour tous les salariés. Toutes ces listes, bien que
conditionnelles, doivent être créées en une seule opération. La condition doit porter sur le
numéro du jour de la semaine en cours d'analyse par la
règle de validité à créer. Et comme vous le savez, c'est la
fonction Excel JourSem qui renseigne sur le
jour de semaine d'une date.
- Sélectionner toutes les cellules du planning avec les dates, soit la plage de cellules C4:H33,
Ainsi, toutes les cellules devant offrir une liste déroulante de choix sont concernées.
- En haut de la fenêtre Excel, cliquer sur l'onglet Données pour activer son ruban,
- Dans la section Outils de données du ruban, cliquer sur le bouton Validation des données,
- Dans la boîte de dialogue qui suit, veiller à ce que l'onglet Options soit actif,
- Dans la zone Autoriser, choisir l'option Liste,
- Puis, cliquer dans la zone intitulée Source juste en-dessous, pour l'activer,
- Dès lors, taper le symbole égal (=) pour initier la syntaxe de la règle,
- Inscrire la fonction conditionnelle suivie d'une parenthèse, soit : Si(,
- Puis, ajouter la fonction pour le jour de semaine, suivie d'une parenthèse, soit : JourSem(,
- Dès lors, désigner la première date à analyser en cliquant sur sa cellule B4, soit : $B$4,
Rappelons-le, l'analyse d'une
règle de validité est chronologique. Toutes les cellules vont être étudiées tour à tour et confrontées au critère que nous allons poser sur le
jour de semaine. C'est ainsi que nous obtiendrons des
listes déroulantes contextuelles en une seule construction.
- Enfoncer deux fois la touche F4 du clavier pour la libérer en ligne, ce qui donne : $B4,
En effet, pour chaque ligne, la date est la même. Et pour chaque salarié, donc pour chaque colonne, la condition doit être vérifiée sur la
colonne B que nous figeons. En revanche, toutes les autres dates doivent être passées en revue. C'est la raison pour laquelle nous retirons le dollar qui était placé devant l'indice 4 de la ligne.
- Taper alors un point-virgule suivi du chiffre 2, soit : ;2,
Nous indiquons ainsi à la
fonction JourSem de raisonner sur le calendrier européen conventionnel. Dans ce contexte, c'est le
Lundi et non le Dimanche qui est considéré comme le
premier jour (1) de la
semaine.
- Fermer la parenthèse de la fonction Joursem,
- Puis, inscrire l'inégalité suivante : >5,
Grâce à ce critère, nous cherchons à déceler tous les jours de semaine placés après le Vendredi. En d'autres termes, nous cherchons à savoir si la date en cours d'analyse tombe sur un
jour de Week-End. Si ce critère est honoré, nous devons nourrir la liste déroulante des cellules de la ligne en cours avec les tâches de la
colonne K.
- Taper un point-virgule (;) pour passer dans la branche Alors de la fonction Si,
- Désigner les tâches des Week-End en sélectionnant la plage K4:K6, ce qui donne : $K$4:$K$6,
Cette fois, nous la conservons intégralement figée. Lorsque le critère est vérifié et malgré la progression de l'analyse, ce sont ces trois cellules qui doivent être considérées. Elles ne doivent donc pas bouger. Lorsque la condition n'est pas honorée cette fois, nous devons désigner les
tâches pour les jours de semaine.
- Taper un point-virgule (;) pour passer dans la branche Sinon de la fonction Si,
- Désigner alors les tâches de la plage des jours ouvrés, ce qui donne : $J$4:$J$6,
- Fermer la parenthèse de la fonction Si,
- Enfin, valider la création de la règle en cliquant sur le bouton Ok de la boîte de dialogue,
Désormais et comme vous pouvez le voir, chaque cellule du planning offre une liste déroulante.
Mais grâce à la règle que nous avons construite sur le tableau des tâches, leurs propositions s'ajustent en fonction du jour de semaine pour la date en cours. Sur les lignes vertes, celles des Week-End, ce sont effectivement des tâches différentes de celles de la semaine qui sont proposées. C'est ainsi donc que nous avons bâti une multitude de
listes déroulantes adaptatives sur tout le tableau.