Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Obtenir la date à partir de laquelle deux périodes se chevauchent

  • Initiateur de la discussion Initiateur de la discussion maxime.crml
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

M

maxime.crml

Guest
Bonsoir à tous,

Je cherche une âme charitable (ou plusieurs) qui saurait m'aider sur mon problème de chevauchement de date.

Contexte : J'ai un classeur excel qui contient des périodes d'indisponibilité pour des centrales électriques en France (par exemple, quand il y a une maintenance, une grève, etc.), il se peut qu'une centrale tourne temporairement au ralentit ou soit même arrêté.

Variables :
  1. Mise à jour : La date de mise à jour (date à laquelle le producteur a signalé son indisponibilité)
  2. Début indispo : La date de début d'indisponibilité (date à laquelle la centrale en question sera au ralentit ou arrêtée)
  3. Fin indispo : La date de fin d'indisponibilité
  4. Nom de l'unité : Le nom de l'unité de production (= la centrale)
  5. Puissance nominale : La puissance nominale (en MW de la centrale)
  6. Puissance disponible restante : La puissance disponible restante pendant l'indisponibilité (en MW)
Problème : Certaines périodes d'indisponibilité se chevauchent. Si je souhaite calculer la puissance totale indisponible à une période t, il se peut que je compte plusieurs fois des puissances indisponibles alors qu'il s'agit de la même centrale... Je dois donc gérer ce problème de chevauchement ex-ante.

Ce que j'ai déjà fait : Pas mal de choses en fait, les données ici sont déjà passées dans un algorithme. Pour le chevauchement, j'ai réussi à identifier les observations pour lesquelles la période d'indisponibilité chevauche celle d'une autre observation pour une même centrale mise à jour plus récemment... je ne sais pas si c'est très clair, mais la formule (ci-dessous) est déjà insérée dans une 7e variable "OVERLAP" dans la classeur ci-joint.

VB:
=SI(SOMMEPROD((B2<$C$2:$C1043)*(C2>$B$2:$B1043)*(D2=$D$2:$D1043)*(A2<=$A$2:$A1043))>1;1;0)

Ce que je souhaite faire : Obtenir la date (format jj/mm/yyyy HH:MM) à partir de laquelle l'observation i chevauche l'observation j (plus récente pour la même centrale). Sachant qu'il peut y avoir plusieurs i et plusieurs j... Voir le carré rouge sur le schéma ci-dessous.



Ça doit pas être bien sorcier mais je cale un peu là...

Merci d'avance ! 🙂

Edit 1 : J'ai ajouté un second fichier (chevauchementTEST2) afin d'isoler un exemple particulier du problème.
Edit 2 : Ci-dessous un screenshot de la situation initial et du résultat souhaité

 

Pièces jointes

Dernière modification par un modérateur:
Petit up : Je pense avoir trouvé une solution (un peu bancale je trouve), mais ça marche (code pour le fichier chevauchementTEST2, cellule H2) :

VB:
=MIN(SI($D$2:$D$5=D2;SI($B$2:$B$5>B2;SI($B$2:$B$5<C2;SI($G$2:$G$5=0;$B$2:$B$5)))))

Si vous avez une autre idée, quelque chose de plus efficace, je suis preneur.
Bonne journée à tous !
 
Dernière modification par un modérateur:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…