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

  • Initiateur de la discussion Initiateur de la discussion PMG
  • 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 !

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

Bonjour PMG

danielco j'ai aussi eu des problèmes a l'ouverture lol

Voir en Feuil2 , une approche perfectible sûrement !
Oupss je n'ai pas fait attention au Jours Ouvrés lol
Peux tu expliquer ?
Edit : j'ai changé le fichier (Modif)
jean marie
 

Pièces jointes

Dernière édition:
Bonjour @danielco, @ChTi160,

Désolé, je le renvoie...
Merci pour vos réponses,

J'ai besoin de décomposer les dates du tableau (origine), qui sont des tâches a réaliser.
Les tâches sont dans l'ordre du tableau.
Le début est calculé en fonction de la fin de la tâche précédente ou imposé selon un planning.
La fin est calculée en fonction d'une durée d’exécution.

Le résultat obtenu doit servir à remplir les cases d'un planning (macro confectionné et amélioré par @mapomme que je remercie encore)
https://www.excel-downloads.com/thr...-trop-lent-dates-heures-en-couleurs.20045611/

Les dates ne doivent pas tomber un week-end, car cela fausse le planning!
Merci Jean-Marie pour ta macro c'est exactement cela mais avec les week-ends!

Paul
PMG
 

Pièces jointes

Re,

19/05/20 09:00 c'est le début et 19/05/20 19:00 la fin d'une journée de travail, censé représenter la durée de d’exécution d'une tâche planifiée.

T1,T2,T3 et T4 sont les variables théoriques d'une journée de travail. Elles sont modifiables pour pouvoir les ajuster si besoin au fil du temps.

Le code que tu as écrit me sert à retranscrire ce temps de travail sur un planning en y intégrant la pause déjeuner.

J'ai besoin d'avoir toutes les plages horaires décomposées de la sorte pour que la macro fonctionne. Ci-joint un exemple.

J’espère avoir été assez concis!

PMG
A+
 

Pièces jointes

Bonjour PGM
Bonjour le Fil ,le Forum

Tu dis : "en y intégrant la pause déjeuner. "
mais dans ton exemple !
les 19/05 , 20/05 , 22/05 , et 25/05 à 03/06 , il n'est pas tenu compte de ces Pauses .
Que doit on faire pour cet exemple 9:00 à 19:00 ?
Couvrir toute la Période 9:00 à 19:00 ou couvrir seulement les périodes 9:00 à 13:00 et ensuite 14:00 à 19:00
Autre exemple : 22/05/2020 12:00 au 22/05/2020 15:15
Couvrir toute la période 12:00 à 15:15 ?
ou Couvrir 12:00 à 13:00 et ensuite de 14:00 à 15:15
je ne sais pas si je suis claire
mais peux tu m'expliquer ?
car ça ne donne pas le même résultat Lol
Merci
Jean marie
 
Bonjour Jean-Marie,
Bonjour Le Fil, Le Forum,

Merci pour ta réponse, je viens de comprendre!!!

Effectivement il y a des erreurs que je n'avais pas vu, il faut tenir compte des périodes 9:00 à 13h00 et ensuite 14:00 à 19:00. J'ai actualiser les données de l'image en dessous ds le fichier ci-joint.

Exemple d'erreur:
code couleur 45 du 09/06/2020 12:00 au 09/06/2020 15:00

Résultat:
45 09/06/2020 12:00 09/06/2020 13:00
45 09/06/2020 14:00 09/06/2020 15:00

Capture 2.PNG


Info:
La date de fin du tableau "origine" est calculé (dans un autre fichier capture 2) en fonction des variables T1, T2, T3 et T4, elle intègre déjà le temps de pause, les weekends et les congés/fériés et certains imprévus.

Merci
Paul
PMG
 

Pièces jointes

Dernière édition:
Re,

Je me suis trompé dans la correction, décidément!
J'espère que le fait d'intégrer le temps de pause ne complique pas trop le code! J'ai compris en gros le code mais je ne saisie pas comment on peut rajouter une ligne avec FirstDate x = x +1 dans le cas ou la durée n’excède pas un jour.

Exemple (le même)
code couleur 45 du 09/06/2020 12:00 au 09/06/2020 15:00

Résultat:
45 09/06/2020 12:00 09/06/2020 13:00
45 09/06/2020 14:00 09/06/2020 15:00

Merci
Paul
 
- 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

Discussions similaires

Retour