Calcul heure de nuit
-
Calcul heure de nuit
Posté par Eric sur 25 novembre 2024 à 13h30bonjour
J’ai un tableau avec dates et heure de début et heure de fin, et j’aimerai avoir en colonne suppl le nombre d’heure de nuit, en power query, afin de construire ensuite ma matrice.
Sachant que les heures de nuit sont de 21h à 05h.
Je tourne en rond alors si vous avez une option merci d’avance, voici un exemple.- Cette discussion a été modifiée Il y a 1 semaine, 2 jours par Eric.
Sophie a répondu Il y a 1 jour, 11 heures 3 Membres · 15 Réponses -
15 Réponses
-
Bonjour Eric,
Comme ça, j’aurai d’abord tenter de faire une table de correspondance pour indiquer que telle heure est une heure de jour ou de nuit. Et ensuite via Query, faire une colonne qui permette de fusionner les deux tables.
A voir si ça fonctionne 🙂
-
Bonjour Audrey
Une table fait référence à une liste complète du temps possible (heure et minutes), alors que là on ne saisit qu’une tranche horaire.
Merci
-
J’ai bien une petite idée mais je ferai ça demain depuis un ordi pour faire une démo vite fait.
-
je vais commencer mon test et je reviens vers toi si jamais ça fonctionne
-
J’ai une version qui fonctionne (avec ma logique qui est parfois tordue, mais j’ai commenté toutes les étapes dans l’advanced editor et tu peux me contacter si nécessaire). Je mets ma version dans l’onglet Documents de ce forum
je l’ai fait sous excel mais c’est transposable dans power query sous power bi desktop
https://ppfc.fr/?attachment=21263&document_type=document&download_document_file=1&document_file=50
- Cette réponse a été modifiée Il y a 1 semaine, 1 jour par Sophie.
-
Merci Sophie,
Les premiers tests sont parfaits, il faut juste que j’intègre 05:00 dans le calcul des Heures Nuit, car si je mets en heure de fin 05:00, il ne me le prends pas en compte (exemple de 22:00 à 05:00 = 7 heures).
Encore un grand merci pour le temps que tu m’as fait gagné, et surtout dans ma progression.
-
j’ai peut-être mis un strictement inférieur quelque part au lieu de inférieur ou égal,
edit: ça doit venir de là . D’ailleurs cette étape serait bien plus sympa avec un simple OR au lieu d’un else if, mais je n’ai pas réussi à le mettre en MCODE :s
//déduit la fin de l’horaire de nuit du poste: si l’heure de fin est comprises entre 21:00 et 05:00, alors la fin du poste de nuit sera la même que l’heure de fin de poste, sinon l’horaire de nuit s’arrête à 05:00
#”Personnalisée ajoutée4″ = Table.AddColumn(#”Type modifié4″, “Fin heure de nuit”, each if Time.From([Fin du poste])>=[START] then [Fin du poste] else if Time.From([Fin du poste])<[END] then [Fin du poste] else Text.From([Dates])&” “&”05:00:00”) -
Sophie
J’ai un souci dans le calcul quand on a un début à 22h (donc heure nuit avant 24h) et une fin à 14h , là il bug car il calcule 0 au lieu de 7 dans cet exemple.
J’ai regardé mais je bloque.
cdt
- Cette réponse a été modifiée Il y a 1 semaine, 1 jour par Eric.
-
ah oui14H jour suivant? comment tu sais si c’est 14H jour même ou 14H jour suivant dans ton tableau d’origine?
-
-
Mais sur ta première ligne on a 13/11/2024 – début 12:00:00 fin 14:00:00
et tu vas créer une ligne par ex 26/11/2024 – début 22:00:00 fin 14:00:00
là faut que je me creuse la tête pour qu’il s’ache quand ajouter un jour à la date fin et quand ne pas le faire car là je n’arrive pas à le lui faire identifier.
Le plus facile serait d’avoir la date de fin comme tu te l’imagines, après je suppose que tes données source ne la livre pas. -
Effectivement la date de fin n’est pas dans la base.
Merci encore et désolé pour cette problématique.
-
Bonjour Sophie,
Je tenais à te remercier pour le temps consacré, car j’ai réussi en utilisant ta colonne DFin.
Encore Bravo.
Et merci pour ce forum.
-
Contente que tu t’en sois sorti.
De mon côté j’alterne encore beaucoup les jours devant mon ordi et les jours sur chantier et je n’ai donc pas encore eu le temps de me repencher sur le sujet.
Bonne continuation
Connectez-vous pour répondre.