XL 2013 VBA / Extraction de dates et heures comprises entre 2 autres selon condition.

PMG

XLDnaute Junior
Bonjour le Fil, Le Forum,

Pourriez vous svp m'aider à finir un code, certains paramètres m'échappent encore!

J'ai un tableau (origine) avec 3 colonnes: code / date de début avec heure / date de fin avec heure.
J'aimerai décomposé chaque ligne du tableau (origine) comme l'exemple ci dessous en tenant compte des jours ouvrés (lundi au vendredi) et heures de travail (9 à 13 et 14 à 19):

Capture 1.PNG


J'arrive à extraire une liste de dates mais de là a y ajouter des heures!

Merci d'avance pour votre disponibilité et vos lumières!
PMG
 

Pièces jointes

  • Extraction_dates.xlsm
    33.9 KB · Affichages: 18

PMG

XLDnaute Junior
Re,
J'avais commencé à comprendre et reprendre le code, mais j'en étais encore loin (pas ton niveau).
J'ai bien compris le code super intéressant par rapport à If Else etc...

Juste un petit problème sur la première date, il manque une date:
33 29/05/20 14:00 29/05/20 18:00

Je pense que c'est dans la partie Case > 1 car si l'heure de début est comprise entre T1 et T2,
on rajoute une ligne avec T3 et T4.

En tout cas c'est très clair, merci je vais m'en inspirer lors de prochains codes.

Merci bcp de ta disponibilité Jean-Marie!

Paul
PMG
 

PMG

XLDnaute Junior
Bonjour ChTi160
Le Fil, Le Forum,

C'est parfait!
J'ai compté 7 possibilités et tout à l'air de fonctionner!

Simplement cette partie du code (si plusieurs jours), je ne la comprends pas. Est elle nécessaire?
Car tout fonctionne sans elle apparemment.
VB:
Case Dte = FirstDate And Hredebut >= T1 And Hredebut <= T2 And Hrefin >= T3 And Hrefin <= T4
x = x + 1
ReDim Preserve Tab_Recap(3, x)
Tab_Recap(1, x) = StrCode
Tab_Recap(2, x) = Format(Dte + T3, "mm/dd/yyyy hh:mm")
Tab_Recap(3, x) = Format(Dte + Hrefin, "mm/dd/yyyy hh:mm")

Un grand merci
Bonne journée
PMG
 

Discussions similaires

Statistiques des forums

Discussions
312 104
Messages
2 085 344
Membres
102 865
dernier inscrit
FreyaSalander