Comment trouver la liste des employés absent (vacances, maladie, formation, ...) pour une date donnée dans Excel ? C'est possible et en une seule formule.
- Faire 2 tests logiques entre une date donnée et une plage d'absence
- Intégrer ce test dans une fonction FILTRE
- Rendre le document dynamique avec la fonction AUJOURDHUI
Point de départ
La disposition des données est très importante, comme toujours avec Excel. Nous allons construire notre document avec 3 colonnes
- La date de départ en vacances
- La date de fin des vacances
- Le nom de l'employé
Comment savoir si un employé est absent avec Excel ?
C'est le point le plus important de tout le projet. Nous allons construire 2 tests logiques puis les regrouper ensemble. Le premier test va tester si la date de référence est supérieure ou égale aux dates de débuts
Et le second
Regroupement des 2 tests logiques
Un test logique retourne VRAI ou FAUX mais également 1 ou 0. Donc nous pouvons regrouper les deux tests en les multipliant l'un avec l'autre
- Il faut nécessairement mettre chacun des tests entre parenthèses
- Le résultat sera nécessairement des 0 quand la date de référence n'est pas pendant une période d'absence et 1 quand il s'agit d'un congé.
=(E2>=A2:A14)*(E2<=B2:B14)
Utiliser la fonction FILTRE
Maintenant, nous allons utiliser la fonction FILTRE. Si vous ne connaissez pas cette fonction, l'article suivant va vous montrer les possibilités proposées par cette fonction.
- Le premier paramètre va uniquement correspondre à la colonne des employés
- Le second paramètre de la fonction FILTRE va reprendre le test que nous venons de construire
=FILTRE(C2:C14;(E2>=A2:A14)*(E2<=B2:B14))
Afficher un message quand aucun employé est trouvé
Ensuite, nous allons renseigner le troisième argument de la fonction pour afficher le message "Personne" quand la fonction FILTRE n'a trouvé aucune ligne répondant aux tests.
=FILTRE(C2:C14;(E2>=A2:A14)*(E2<=B2:B14);"Personne")
Et on peut voir que pour la date du 23 mai 2023, c'est le mot "Personne" qui s'affiche car personne n'est en vacances.
Rendre le document dynamique avec AUJOURDHUI
Enfin, pour rendre notre tableau parfaitement dynamique, nous allons remplacer la date de référence par la fonction AUJOURDUI(). De cette façon, à chaque nouvelle journée, la fonction AUJOURDUI() va retourner la date du jour. Et donc, sans intervention de votre part, vous saurez qui est en congé au jour le jour.