formateur informatique

Calendrier automatique avec une seule formule Excel

Accueil  >  Bureautique  >  Excel  >  Excel Avancé  >  Calendrier automatique avec une seule formule Excel
Livres à télécharger


Pour partager cette vidéo sur les réseaux sociaux ou sur un site, voici son url :


Inscription Newsletter    Abonner à Youtube    Vidéos astuces Instagram
Sujets que vous pourriez aussi aimer :


Calendrier automatique - Une formule simple

La fonction Sequence, judicieusement embarquée dans la fonction Date, permet de créer très rapidement un calendrier, en fonction du choix d'un mois et d'une année. La méthode est encore plus simple que l'exploitation d'une formule matricielle que nous avions démontrée à ce sujet.

Calendrier automatique avec une seule formule Excel

Sur l'exemple illustré par la capture, au choix d'une année et d'un mois par l'utilisateur, toutes les dates de la période ainsi définie se recomposent, sans dépasser la limite du mois. Vous pouvez le constater sur cet exemple avec le 29 février pour cette année bissextile.

Classeur Excel à télécharger
Pour la construction de ce calendrier, nous suggérons d'agir à partir d'un classeur Excel qui offre notamment deux listes déroulantes pour opérer les choix sur l'année et le mois. C'est en cellule C3 qu'une première liste déroulante permet de choisir l'année. Si vous consultez sa barre de formule, vous remarquez que c'est la date du premier jour de cette année qui est en fait inscrite. C'est un format personnalisé qui permet de ne conserver la précision que sur l'année. C'est une autre liste déroulante en cellule F3 qui permet de choisir le mois. Là aussi, c'est le premier jour d'une année qui apparaît dans la barre de formule. Mais un format personnalisé leurre l'affichage.

Choisir l-annee et le mois du calendrier à construire par formule Excel

L'année d'une date
La fonction Excel Date permet de recomposer une date en fonction d'informations précises sur l'année, le mois et le jour. Les deux premières données sont fournies par les deux listes déroulantes. L'information sur le jour doit être matricielle pour recomposer la suite de tous les jours d'un mois, avec une seule formule. Nous comprendrons très vite l'astuce.
  • Sélectionner la première case du calendrier en cliquant sur sa cellule B5,
  • Taper le symbole égal (=) pour débuter la construction de la formule,
  • Inscrire la fonction de construction de dates, suivie d'une parenthèse, soit : Date(,
La première information demandée par cette fonction est la précision sur l'année. Comme elle est fournie sous forme de date complète, nous devons l'isoler grâce à la fonction Annee.
  • Inscrire la fonction pour isoler l'année d'une date, suivie d'une parenthèse, soit : Annee(,
  • Puis, désigner la date de l'année en cliquant sur sa cellule C3,
  • Fermer la parenthèse de la fonction Annee,
  • Puis, taper un point-virgule (;) pour passer dans l'argument du mois,
Là encore, cette donnée est fournie sous forme de date complète. Cette fois, c'est la fonction Mois qui permet d'isoler le numéro de mois d'une date.
  • Inscrire la fonction pour le numéro de mois, suivie d'une parenthèse, soit : Mois(,
  • Désigner la date du mois en cliquant sur sa cellule F3;
  • Fermer la parenthèse de la fonction Mois,
  • Puis, taper un point-virgule (;) pour passer dans l'argument du jour,
Suite des jours d'un mois
C'est ici que l'astuce doit intervenir. Nous le savons, l'enjeu n'est pas de construire la date d'un jour précis. Il est question de livrer toutes les dates en même temps, pour le mois et l'année choisis. Dans ce dernier argument, nous devons donc engager la fonction matricielle sequence pour construire automatiquement une suite de numéros, suffisamment grande.
  • Inscrire la fonction de suite logique suivie d'une parenthèse, soit : Sequence(,
  • En premier argument, taper le chiffre 6,
Ainsi, nous demandons de créer une matrice de 6 lignes, soit exactement du même nombre que celles de notre tableau de réception.
  • Taper un point-virgule (;) pour passer dans l'argument du nombre de colonnes,
  • Taper de nouveau le chiffre 6,
Nous demandons donc que cette matrice soit aussi composée du même nombre de colonnes que celui de notre tableau de réception. Nous allons donc construire une suite de 36 numéros, bien supérieure à la taille maximale d'un mois de l'année. Mais, c'est encore une astuce qui corrige automatiquement le défaut. Nous le verrons.
  • Fermer la parenthèse de la fonction Sequence,
En l'absence de précision sur le pas de cette suite, la fonction Sequence réalise naturellement des incrémentations d'une unité.
  • Fermer la parenthèse de la fonction Date,
  • Enfin, valider la formule matricielle par la touche Entrée du clavier,
Comme vous pouvez le voir, les 36 dates tombent.

Calendrier automatique du mois choisi avec une seule formule Excel

Vous pouvez vérifier la véracité de ces dernières en vous calant sur le mois en cours.

Les dates hors du mois
Par contre et comme nous l'avons annoncé, un défaut gênant saute aux yeux. La série de dates dépasse allègrement la borne supérieure du mois demandé. Ce phénomène est tout à fait naturel et vous l'avez compris, étant donné que nous avons choisi de construire une suite de 36 numéros. L'astuce est simple. Elle consiste à bâtir une règle de miseen forme conditionnelle sur ce tableau. Cette règle doit masquer la date en cours d'analyse, lorsque cette dernière déborde du mois.
  • Sélectionner toutes les cellules du tableau, soit la plage B5:G10,
  • Dans la section Styles du ruban Accueil, cliquer sur le bouton Mise en forme conditionnelle,
  • En bas des propositions, choisir l'option Nouvelle règle,
  • Dans la boîte de dialogue qui suit, sélectionner le type : Utiliser une formule pour ...,
  • Puis, cliquer dans la zone de saisie du dessous pour l'activer,
  • Dans cette zone, taper la syntaxe suivante : =MOIS(B5)<>MOIS($B$5) ,
Les deux cellules désignent la même première date de la série. Pourtant ce ne sont pas les mêmes. La première est libre de suivre l'analyse chronologique de la règle. Elle ne porte pas de dollars (B5). La seconde est complètement figée par les dollars ($B$5). Donc, elle reste en place. C'est ainsi que nous allons détecter lorsque le mois d'une date dépasse le mois choisi. Dans ces conditions, il convient d'appliquer aux cellules, une couleur de police et une couleur de fond identiques à l'arrière-plan de la feuille. L'illusion sera parfaite. Les dates qui débordent ne seront plus visibles.
  • En bas de la boîte de dialogue, cliquer sur le bouton Format,
  • Dans celle qui suit, activer l'onglet Remplissage,
  • Dans la palette de couleurs, choisir un gris semblable au fond de la feuille,
  • Activer alors l'onglet Police de la boîte de dialogue,
  • Avec la deuxième liste déroulante, choisir le même gris pour le texte,
  • Puis, valider ces réglages d'attributs en cliquant sur le bouton Ok,
Nous sommes ainsi de retour sur la première boîte de dialogue qui résume parfaitement la situation. Toute date située au-delà de la période, est automatiquement masquée par ce subterfuge.

Règle de mise en forme conditionnelle Excel pour masquer les dates hors mois

Il ne reste plus qu'à valider la création de la règle pour découvrir un calendrier dynamique en bonne et due forme et ce, à l'aide d'une très simple formule embarquant la fonction Sequence.

Calendrier mensuel Excel avec une seule formule

 
Sur Facebook
Sur Youtube
Les livres
Contact
Mentions légales



Abonnement à la chaîne Youtube
Partager la formation
Partager sur Facebook
Partager sur Twitter
Partager sur LinkedIn