Organiser une semaine de travail devient plus simple quand le planning s’ajuste automatiquement aux choix de mois et d’année. Un semainier dynamique sur Excel réduit les erreurs de saisie et libère du temps pour les tâches à plus forte valeur.
Ce guide détaille la création d’un planning hebdomadaire automatisé, avec menus déroulants, mises en forme conditionnelles pour week-ends et jours fériés, et option de masquage par Macros Excel. La suite présente étapes pratiques et exemples, enchaînant sur des règles à implémenter.
A retenir :
- Menus déroulants mois et années, liés à cellules
- Mise en forme conditionnelle pour week-ends et jours fériés
- Formules DATE et TEXTE pour titre dynamique
- Macro VBA pour masquer colonnes inutiles
En partant des menus déroulants, construire le calendrier dynamique Excel
Créer et lier les menus déroulants pour mois et années
Ce point relie la saisie utilisateur à la génération des dates et facilite l’automatisation du planning en quelques clics. Positionnez une zone de liste déroulante pour le mois en A1 et une autre pour l’année en A2 afin de récupérer les indices sélectionnés.
Pour lier l’objet, ouvrez Format de contrôle et indiquez la plage des mois et la cellule liée, la valeur retournée correspondant à l’index du mois. Selon Microsoft, la validation et les objets formulaires restent compatibles avec la plupart des versions d’Excel modernes.
La formule initiale pour obtenir le premier jour du mois combine ces valeurs liées, et elle sert de base pour étirer les jours horizontalement. Cette base prépare la mise en forme et le masquage conditionnel selon le nombre de jours.
Liste des éléments essentiels :
- Cellules liées A1 et A2 pour mois et année
- Plages de données éloignées pour les listes
- Format de contrôle pour lier l’objet à la cellule
Mois
Nombre de jours
Janvier
31
Février
28 ou 29
Mars
31
Avril
30
« J’ai gagné des heures chaque mois en automatisant mes plannings avec Excel »
Claire D.
Pour calculer les dates et afficher un titre dynamique avec Excel
Composer la date de début et étirer les jours automatiquement
Ce volet prolonge la configuration des listes pour produire la série quotidienne visible sur la grille du planning et préparer la mise en forme. La formule de base pour le premier jour utilise la fonction DATE combinée aux cellules liées des menus déroulants.
Par exemple, la formule =DATE(A2+2014;A1;1) fournit le premier jour utile lorsque la cellule année est indexée, puis l’ajout de 1 à la cellule précédente génère les jours suivants. Selon Microsoft, la fonction DATE reste le moyen standard pour agréger année, mois et jour.
Ensuite changez le format d’affichage en jjj jj pour afficher le jour en lettres et chiffre, puis orientez le texte verticalement pour économiser la largeur des colonnes. Ce réglage influence la lisibilité sur un semainier étroit.
Actions rapides à exécuter :
- Entrer =DATE(A2+2014;A1;1) pour le jour de départ
- Recopier avec +1 pour générer la série des dates
- Appliquer format personnalisé jjj jj et orientation verticale
Formule
Usage
Exemple
=DATE(A2+2014;A1;1)
Premier jour du mois
Retourne 01/05/2015 si A1=5 et A2=1
=B6+1
Autre jour
Incrémente les dates à droite
=TEXTE(…)
Titre dynamique
Affiche période complète lisible
=JOURSEM(B$6;2)>5
Identifier week-ends
Vrai pour samedi et dimanche
« En liant mois et année j’ai évité des erreurs récurrentes dans mes plannings d’équipe »
Marc L.
Créer le titre dynamique de période et préparer les règles visuelles
Ce point connecte les dates calculées à un titre adaptatif qui reflète la période sélectionnée, ce qui améliore la clarté du planning. Combinez TEXTE et DATE pour obtenir une phrase comme « Période du 01 mai 2015 au 31 mai 2015 ».
La formule proposée assemble les deux bornes du mois en utilisant TEXTE pour le rendu lisible et permet de mettre à jour automatiquement le header. Selon Service-public.fr, bien afficher la période aide à communiquer les échéances à un public interne.
Points de contrôle utiles :
- Utiliser TEXTE pour formater la date lisiblement
- Afficher première et dernière date via DATE et -1
- Placer le titre au-dessus du tableau pour visibilité
« Le titre dynamique donne immédiatement le contexte aux collaborateurs »
Anne B.
En ajoutant mise en forme conditionnelle, VBA et gestion des jours fériés
Appliquer des règles pour week-ends et jours fériés
Ce segment étend la lisibilité du planning en colorant automatiquement week-ends et jours fériés, ce qui facilite la lecture rapide des disponibilités. La règle =JOURSEM(B$6;2)>5 identifie les samedis et dimanches lorsque la semaine commence le lundi.
Pour les jours fériés, créez une plage dédiée dans une feuille secondaire puis utilisez NB.SI.ENS pour tester la présence d’une date dans cette liste. Selon des contributeurs sur Stack Overflow, cette méthode reste robuste pour des listes de dates variables.
Conseils pratiques :
- Créer une feuille « Jours fériés » référencée par NB.SI.ENS
- Appliquer deux règles conditionnelles distinctes
- Vérifier le Manager de règles pour l’ordre d’évaluation
« La coloration automatique a réduit nos conflits de planning en équipe »
Olivier M.
Programmer une macro VBA pour masquer les colonnes inutiles
Ce point conclut l’automatisation en utilisant Programmation VBA pour masquer les colonnes correspondant aux jours inexistants du mois sélectionné. Le code boucle sur les colonnes des jours 29 à 31 et masque celles qui ne correspondent pas au mois sélectionné.
Collez un module dans l’éditeur VBA, puis assignez la macro aux menus déroulants afin de lancer le masquage après chaque sélection. Selon Microsoft, l’éditeur Visual Basic reste l’environnement recommandé pour gérer les Macros Excel.
Étapes d’assignation :
- Ouvrir Visual Basic Editor avec Alt+F11
- Insérer un module et coller la macro fournie
- Assigner la macro aux objets menu déroulant via clic droit
Source : Microsoft, « DATE function », Microsoft Support, 2023 ; Service-public.fr, « Jours fériés en France », Service-public.fr, 2024 ; Stack Overflow, « VBA hiding columns example », Stack Overflow, 2020.

