Bonjour à tous,
Voici mon objectif : arriver à calculer une durée à la seconde près en gérant les changements d'heure.
Dans un fichier excel, par vba :
Je récupère depuis un fichier csv une date (jj/mm/aaaa) et une heure (hh:mm:ss) de début (ce sont 2 données issues d'un split).
J'assemble cette date et cette heure dans une variable string debut de cette forme jj/mm/aaaa hh:mm:ss
Je fait la même chose pour une date et heure de fin, dans une variable fin
J'avais opté pour une conversion en timestamp avec DateDiff("s", "1/1/1970", CDate(debut)) pour pouvoir calculer la durée du traitement, ce qui fonctionne très bien.
Sauf que certains traitements peuvent durer plusieurs jours, je dois revoir ma copie pour pouvoir gérer les changements d'heure.
Si le traitement commence le samedi à 23h et fini le dimanche à 05h00, en fonction du changement (+/- 1 heure) mon heure de fin modifiée par le changement d'heure faussera le calcul.
Déterminer le dernier dimanche de mars et octobre de l'année en cours, puis comparer l'heure avec 03:00 et ajouter ou retrancher 1 heure me paraît très compliquer et beaucoup ressembler à une usine à gaz.
Comment pourrais-je m'en sortir ?
Partager