Intervalle entre 2 dates avec une période donnée exclue

Résolu/Fermé
hardgratte Messages postés 448 Date d'inscription mardi 16 juin 2009 Statut Membre Dernière intervention 2 juin 2022 - 1 juin 2022 à 10:43
hardgratte Messages postés 448 Date d'inscription mardi 16 juin 2009 Statut Membre Dernière intervention 2 juin 2022 - 2 juin 2022 à 09:20
Bonjour,

Je cherche à faire une opération qui me semble assez compliquée avec des dates. (sans macro)

J'ai 2 dates en entrée. Je souhaites calculer l'intervalle entre ces 2 dates (en semaines, par exemple), en prenant en compte une ou deux périodes de vacance dans l'année qui doivent être exclues de cet intervalle.

Exemple :
D1 : 01/07/2022
D2 : 01/10/2022
Vac1 : Période non comptée chaque année: du 01/08/XXXX au 31/08/XXXX
Résultat attendu : [D2-D1] - Vac1 : 3 mois - 1 mois = 2 mois

Evidement, la période de vacance ne doit pas être décomptée si elle n'est pas incluse dans l'intervalle
Et cela doit fonctionner quelque soit l'année (période de vacance similaire chaque année).

J'imagine qu'on sera sur un formule conditionnelle du type :
SI( ([D2-D1] inclue Vac1 ; ([D2-D1] - Vac1) ; [D2-D1] )
Ou peut être que "[D2-D1] - Vac1" suffira si Excel arrive à gérer le calendrier correctement.

Mais comment lui dire "[D2-D1] inclue Vac1"? Et comment gérer la période Vac1 quelque soit l'année ?

Cela pose également un autre soucis : Si seulement une partie de la période Vac1 est incluse dans [D2-D1], il faut que l'opération "[D2-D1] - Vac1" ne décompte que la période en commun entre [D2-D1) et Vac1 (période de recouvrement).

N'hésitez pas à me dire si cela manque de clarté.
Merci d'avance pour vos suggestions.

Configuration: Windows / Chrome 102.0.5005.62
A voir également:

3 réponses

DjiDji59430 Messages postés 4042 Date d'inscription samedi 19 avril 2008 Statut Membre Dernière intervention 6 mai 2024 647
1 juin 2022 à 10:46
Bonjour à tous,

Regarde dans l'aide la syntaxe de =NB.JOURS.OUVRES.INTL()

Crdlmt
0
brucine Messages postés 14506 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 8 mai 2024 1 861
1 juin 2022 à 11:53
Bonjour,

Ben non si j'ai bien compris: il ne s'agit pas de jours ouvrés mais d'une période de vacances fixes tous les ans du 1er août au 31 août.

"L'astuce" consiste à définir ces dates dans le style: =1&"/"&"8"&"/"&ANNEE(AUJOURDHUI()) pour le 1er août de l'année courante et idem avec 31 pour le 31.

En supposant que A3, B3, C3 1er août comme ci-dessus, D3 31 août idem, il vient en E3 au format jours sans décimale:

=SI(MOIS(B3)>8;(B3-A3)-(D3-C3);(B3-A3)-(D3-B3))

où je peux remplacer C3 et D3 par leurs formules respectives.
0
via55 Messages postés 14408 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 5 mai 2024 2 704
1 juin 2022 à 11:19
Bonjour à vous deux

Avec 1ere date en A1 et 2nde date en B1 :
=DATEDIF(A1;B1;"m")-SI(ET(A1<DATE(ANNEE(A1);8;1);B1>DATE(ANNEE(B1);8;31));1;0)

Cdlmnt
Via
0
hardgratte Messages postés 448 Date d'inscription mardi 16 juin 2009 Statut Membre Dernière intervention 2 juin 2022 76
2 juin 2022 à 09:20
Merci à vous tous.
Je suis finalement parti de la formule de Via55, que j'ai complétée et remaniée pour inclure toutes les fonctions dont j'avais besoin.
Ca me fait une grosse feuille de calcul, mais ça marche impec.

Bonne journée.
0