week_and_yearSyntaxeSemaineAnnee(the date laDate) Retourne au format liste, le numéro de semaine et l'année correspondante à une date au format date (the date "jj/mm/aaaa"). Par Fredo d;o) ExempleSemaineAnnee(the date "31/12/2002" ) ---> {2003, "01"} Scripton SemaineAnnee(laDate) set Annee to (year of laDate) set AnneeSem to Annee set DateLundiDebut to DateLundi("01/01/" & Annee) set DateLundiFin to DateLundi("01/01/" & Annee + 1) if (laDate < DateLundiDebut) then set {DateLundiDebut, AnneeSem} to {DateLundi("01/01/" & Annee - 1), Annee - 1} if (laDate >= DateLundiFin) then set {DateLundiDebut, AnneeSem} to {DateLundiFin, Annee + 1} return {AnneeSem, (text -2 thru -1 of ("0" & (1 + ((LaDate - DateLundiDebut) div weeks))))} end SemaineAnnee
on DateLundi(laDate) set DateDebut to (date (laDate)) as date set JourSem to (weekday of DateDebut) as text set NroJourSem to (offset of (text 1 thru 3 of JourSem) in "MonTueWedThuFriSatSun") div 3 if NroJourSem > 3 then set NroJourSem to (NroJourSem - 7) return (DateDebut - (NroJourSem * days)) end DateLundi
RemarqueLa semaine 1 est la première semaine de l'année comportant un jeudi (norme ISO N° 8601). La sous-routine "DateLundi" retourne la date du lundi de la semaine du 1er janvier de l'année de la date fournie.
|