OVH Cloud OVH Cloud

Nombre de jours entre deux dates

2 réponses
Avatar
Emcy
bonjour,

Comment fait-on pour calculer le nombre de jours entre deux dates en
enlevant les week-ends et les jours fériés ?

2 réponses

Avatar
david
salut,

1 seule chose à la fois :
Le nombre de jours entre 2 dates est simplement la différence entre
les 2 :
offJour = Dt2 - Dt1

Le nombre de week-End peut-être approximé à
nbWeekEnd = (offJour)7.
Soit 2 fois plus de samedi et de dimanche
nbWeekEnd = nbWeekEnd * 2

Toutefois, il faut corriger cette valeur en fonction du type de jour
(semaine) pour Dt1:
si weekDay(Dt1)=vbSaturday then nbWeekEnd = nbWeekEnd - 2
si weekDay(Dt1)=vbSunday then nbWeekEnd = nbWeekEnd - 1
et pour Dt2 (inverse de Dt1):
si weekDay(Dt2)=vbSaturday then nbWeekEnd = nbWeekEnd + 1
si weekDay(Dt2)=vbSunday then nbWeekEnd = nbWeekEnd + 2

On a donc maintenant le nombre de jours qui équivaut à :
offJour = offJour - nbWeekEnd

Enfin, il faut enlever les jours fériés (je pense que tu souhaites
les français...) :
dans ce cas, il faut tester :
si Dt1 <= dateSerial(year(Dt2),1,1) and Dt2>ÚteSerial(Year(Dt2),
1,1) then offJour=offJour-1
... (et cela pour tous les jours fériés : 1 mai, 8 mai, 14 juillet,
15 août, 1° novembre, 11 novembre et 25 décembre).

Pour pâques, pencote et assension, cela est plus délicat, car pâques
est défini comme étant le 1° dimanche qui suit la 1° pleine lune de
printemps...
Cherche une fonction pour calculer pâque, les autres jours en
dépendent.

A+
Avatar
Hervé DUCARNE
Bonjour,
Jessy l'a fait pour toi.
http://access.jessy.free.fr/htm/DateTime/NbOpenDay.htm

@+

"Emcy" a écrit dans le message de
news:
bonjour,

Comment fait-on pour calculer le nombre de jours entre deux dates en
enlevant les week-ends et les jours fériés ?