Afficher les jours de la semaine en cours

Afficher les jours de la semaine en cours est un besoin qui revient souvent dans mes projets. Cela nécessite certains calculs qui impliquent des formules pas ou peu connues.

Premier jour de la semaine

La première étape est de récupérer le premier jour de la semaine.

Set(gblStartDate, Today()-(Weekday(Today(), StartOfWeek.MondayZero))); 
  • On récupère le numero du jour de la semaine avec la formule Weekday en précisant que la semaine commence par Lundi (chiffre 0).
  • On soustrait ce numéro à la date d’aujourd’hui.
  • On stocke le résultat dans une variable appelée gblStartDate

Les jours suivants

Une fois, le premier jour de la semaine identifié, il reste à calculer les suivants de la manière suivante :

ClearCollect(colWeekDays, ForAll(Sequence(5, 0), DateAdd(gblStartDate, ThisRecord.Value, "Days"))) 
  • La formule Sequence pour générer une suite de 5 chiffres en commençant par 0
  • On boucle sur ces chiffres avec la formule ForAll
  • A chaque itération, on ajoute l’élément en cours au premier jour de la semaine
  • On stocke le tout dans une collection appelée colWeekDays

On obtient donc une collection avec les 5 jours travaillés de la semaine en cours prête à être utilisée dans une galerie par exemple, selon vos besoins.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *