Mettre les consommations à la suite d'une courbe de charge
Bonjour,
J'ai reçu récemment une courbe de charge d'un client (consommation toutes les 10 minutes sur une année complète) qui a les 10 min sur l'axe horizontal et les heures sur l'axe vertical. Néanmoins, pour pouvoir l'exploiter j'ai besoin d'avoir les 10 min comme les heures sur l'axe vertical.
Vous trouverez le fichier ci dessous (seulement jusqu'au 31 mars).
J'aimerais donc avoir un graphique avec dans la colonne A la date avec les heures qui s'incrèmente toutes les 10 min, et dans la colonne B les valeurs en W ou kW.
Pour avoir un résultat :
Date Puissance
01/01/2023 00:00 18
01/01/2023 00:10 19
01/01/2023 00:20 26
01/01/2023 00:30 27
01/01/2023 00:40 32
01/01/2023 00:50 25
01/01/2023 01:00 30
...
J'aimerais également connaitre la méthode utilisée de façon détaillée afin que je puisse me débrouiller tout seul par la suite.
Merci d'avance et n'hésitez pas à me demander d'avantages d'informations.
Cordialement
Hello,
Une proposition PowerQuery.
Pour les experts PowerQueritiens du forum, si jamais vous avez une astuce pour ajouter des #time() à des dates en format jj/mm/aaaa hh:mm:ss je suis preneur.
Vous verez dans la requête j'ai joué sur les types de format pour arriver à ce que je voulais mais c'est pas super opti...
@+
Edit : version corrigée, j'avais mis sur les secondes et non les minutes
Bonjour,
Excel 365 uniquemment. En I2 :
=SEQUENCE((NBVAL(A:A)-1)*6;1;A2;"0:10"*1)En J2 :
=DECALER($A$1;EQUIV(ENT(I2)+TEMPS(HEURE(I2);0;0);A:A;0)-1;MINUTE(MOD(I2;1))/10+1)A recopier vers le bas.
Daniel
Bonjour,
Je vous propose une solution par Power Query:
Tout d'abord sélectionner le tableau et utiliser "Mettre sous forme de tableau" dans le ruban onglet "Accueil".
Nommer le tableau dans l'onglet "création de tableau" en lui donnant un nom qui parle, personnellement j'ai choisi "courbeDeCharge".
Ensuite on va rajouter un tableau qui va permettre de savoir de combien de temps on doit changer l'heure dans notre date, on va donc copier les cellules B1 à G1 et les coller avec transposition dans une nouvelle feuille en cellule A2.
En A1 on va mettre une en-tête "Attribut", et à côté on va rajouter les modifications de temps qu'ils apportent.
Donc respectivement 00:00:00 puis 00:10:00 et ainsi de suite, on va mettre une en-tête "modif date".
On va répéter l'opération de "création de tableau" qu'on a fait sur le premier, et on va nommer celui là "equivalenceAttribut".
Maintenant qu'on a préparé les données, on peut utiliser PowerQuery.
On va utiliser l'onglet "Données" du ruban, on va sélectionner le tableau qu'on vient de créer, n'importe quelle cellule de ce tableau puis choisir dans "Récupérer et transformer des données" l'option "à partir de tableau ou d'une plage".
On arrive alors dans la fenêtre d'édition Power Query, pour le moment on va juste cliquer sur "Fermer et charger dans..." puis cliquer sur "Annuler", on a pas envie de charger le résultat de cette requête dans notre fichier mais comme c'est le seul moyen à ma connaissance pour valider la requête...
Ensuite on retourne sur le tableau principal et on va de nouveau récupérer et transformer des données à partir du tableau, toujours dans l'onglet "Données".
Cette fois on va rester dans l'éditeur car on va pouvoir créer la requête finale, celle qui nous intéresse.
Création de la requête:
Depuis la requête "courbeDeCharge", qui porte le nom du tableau qu'on a mis précédemment, on va préparer les données pour la suite.
Tout d'abord on a besoin de dépivoter toutes les colonnes sauf la colonne "Date", donc on sélectionner toutes les autres (elle auront un fond vert), puis on fait un clic droit sur n'importe laquelle des en-têtes de colonnes et on choisit "dépivoter les colonnes", on voit alors une colonne "Attribut" et une autre "Valeur" apparaître.
On va aussi changer le format de la colonne Date afin de pouvoir la modifier plus tard, pour ça on va cliquer sur l'icône en forme de calendrier à côté du nom de la colonne et on va choisir "Nombre décimal".
Cette première requête est prête, on peut passer à la deuxième.
Pour la deuxième requête, on va sélectionner "equivalenceAttribut" dans le bandeau à gauche, si Power Query affiche "modif date" comme des heures, il faut changer les valeurs en nombre décimal, sinon tout est bon et on peut passer à la suite.
Il reste maintenant à fusionner les requêtes, pour ça on revient sur "courbeDeCharge" puis on va pouvoir créer la dernière requête.
On va vouloir aller dans l'onglet "Accueil" du ruban, et choisir le sous menu "fusionner comme nouvelles" dans "Fusionner des requêtes".
On choisi comme premier tableau "courbeDeCharge" et comme second tableau "equivalenceAttribut, on doit ensuite sélectionner quelles données vont permettre de faire le lien entre les deux tableaux pour les fusionner, on va choisir la colonne Attribut des 2 côtés (donc cliquer sur l'en-tête de la colonne aux deux endroits).
On devrait obtenir ceci:
On valider ensuite en cliquant sur "Ok".
Il reste ensuite à sélectionner quels champs on veut dans le tableau "equivalenceAttribut", pour ça on va cliquer sur l'icône avec des flèches à côté du nom de la colonne "equivalenceAttribut", puis on choisit "modif date".
Ensuite, on va ajouter une colonne pour calculer la date modifiée, pour ça on va tout d'abord dans l'onglet "Ajouter une colonne" dans le ruban, on choisit "Colonne personnalisée" puis s'affiche une fenêtre où on doit nommer la colonne, et inscrire la formule qu'elle va utiliser. On la nomme "date modifiee", on clique dans la fenêtre de formule afin de l'éditer, puis on double clique ensuite sur "Date" dans la fenêtre "Colonnes disponibles", on écrit ensuite "+", puis on double clique sur "equivalenceAttribut.modif date. on doit obtenir le résultat suivant:
On valide en cliquant sur "Ok" et on voit apparaître notre nouvelle colonne.
Il reste ensuite à nettoyer le tableau.
On va commencer par supprimer les colonnes qui ne servent plus, pour ça on retourne dans l'onglet "Accueil" et on va cliquer sur "Choisir les colonnes", on coche uniquement "date modifiee" et "Valeur".
On déplace la colonne "date modifiee" en la sélectionnant et en la faisant glisser, comme on déplacerait un fichier dans le bureau par exemple. On modifie le format de la colonne "date modifiee" pour avoir date/heure, ensuite on fait un tri croissant sur la colonne "date modifiee".
La requête est terminée, on peut ensuite la renommer pour avoir quelque chose de plus parlant que "Fusionner1", pour ça on fait un clic droit sur le nom de la requête et on va dans "Renommer", on peut par exemple l'appeler "courbeDeChargeModifiee".
Enfin, on peut cliquer sur "Fermer et charger".
On a nombreuses feuilles qui s'ajoutent, on garde uniquement "courbeDeChargeModifiee" parmi celles-ci.
Cette feuille contient à présent les puissance pour toutes les 10 minutes. Si la source de données change, on a plus qu'à aller das "Données" et cliquer sur Actualiser tout" pour recharger le résultat de la requête.
Le fichier résultat de mon côté:
PS: ouf je suis un peu en retard, bonjour BAROUTE78 et DanieIC
Bonjour,
Je vous remercie chacun pour votre retour et pour votre réactivité et pour vos réponses.