Importer et mettre en forme des données sous excel depuis un fichier XML

ls_alex

XLDnaute Nouveau
Bonjour,

Je souhaiterais exploiter avec excel des données extraites du web sous format XML.
Il s'agit d'enregistrement d'exercices physique où sont calculés plusieurs données comme les calories, le pouls max et moyen, la distance, la durée, etc.. accessible depuis le web et exportable en XML.

Pour cela j'ai besoin de les importer et de les mettre en forme mais la quantité de data par fichier et le nombre de fichiers XML que j'ai besoin d'exploiter rendent la tâche quasi impossible à la main.
Est-ce que quelqu'un pour m'aider à automatiser ce process ?

J'ai joint ce fichier xml au format xlsx car le format xml n'est pas autorisé sur le forum. Mais les données présentent dans le xlsx correspondent au fichier brut extrait du web en xml

Les donnée qui m'intéressent sont les 2 suivantes (elles sont plutôt vers la fin du fichier)

<recording-rate>5</recording-rate>
et
<type>HEARTRATE</type>
<values>0,0,58,59,61,66,72,68,65,68,83,86,....,</values>

le type "recording-rate" correspond à la résolution d'enregistrement du Heart-rate : "5" dans l'exemple signifie que durant la session d'entrainement, une valeur de rythme cardiaque sera enregistrée toutes les 5secondes. Ce type peut prendre les valeurs de 1, 2, 5, 15 ou 60

le type HEARTRATE correspond à la liste de tous les Heart-rate enregistrés (chaque 5sec dans l'exemple)

A partir de ce fichier XML, j'aimerais pouvoir générer 2 colonnes "Time" et "Heart-rate" afin de pouvoir tracer la courbe du Heart-rate en fonction du temps. Voir l'exemple "Heartrate.xlsx" en pièces jointe pour que se soit plus clair.
La colonne time doit générer une valeur de temps en seconde, une ligne pour chaque point en fonction du recording rate. Ensuite la colonne Heart-rate doit être remplie ligne par ligne avec la valeur de Heart-rate correspondante

Si ce n'est pas clair ou si il manque des infos, n'hésitez pas à me le signaler
Merci d'avance à ceux qui pourraient m'aider.
 

Pièces jointes

  • HeartRate_export.xlsx
    46.1 KB · Affichages: 46
  • Heartrate.xlsx
    35.1 KB · Affichages: 44

camarchepas

XLDnaute Barbatruc
Re : Importer et mettre en forme des données sous excel depuis un fichier XML

Bonjour ,
J'ai regardé un peu ton problème , il y a une info duration qui permettrait d'établir une correlation entre les fréquences cardiaques et le timing, mais c'est vraiment curieux une plages au moins est sur 26 mn et cela correspond à un moment ou l'on dévrait relever toutes les 5 s , dans l'exemple de toute façon y'a que 5 s . et ci l'on fait le calcul le nombre de relevés ne correspond pas du tout .

bizard , non . sinon ma moulinette pour le repérage et le décodage des étiquettes est prête mais forcement le résultat est dans le vent , sauf si un détail m'a échappé
 

ls_alex

XLDnaute Nouveau
Re : Importer et mettre en forme des données sous excel depuis un fichier XML

Bonjour et merci beaucoup pour votre réponse.

Je dois ajouter quelques précisions, effectivement dans le xml il y a une info "duration" qui permet d'établir une corrélation entre la fréquence cardiaque et le timing. En fait il y a plusieurs info "duration" et il s'agit de bien prendre en compte celle qui correspond à la durée totale de la séance. Dans l'exemple il s'agit de 00:37:45.600, on la trouve tout au début :

<distance>0.0</distance>
<calories>135</calories>
<duration>00:37:45.600</duration>

Pour être tout fait clair, il s'agit en fait de séance de natation et l'appareil que j'utilise permet également de mesurer le temps par longueur, toutes les infos liées à une longueur se retrouve sous le type <lap index="N"> et on retrouve notamment les "26" secondes (et non pas minutes) dont vous faisiez référence et qui correspondent donc à la durée de la longueur <lap index="0"> et donc chaque lap index aura une durée associée mais dans notre cas cette info n'est pas utile.

J'ai fait l'exercice et dans l'exemple je retombe bien sur mes pieds : une séance de "duration" 00:37:45.600 correspond donc à 2265sec et avec une résolution de 5 sec, je dois avoir 453 points de mesure du rythme cardiaque et c'est bien le cas lorsque je recompte le nombre de mesure dispo dans l'enregistrement.

Pour simplifier la moulinette, on peut considérer que la résolution sera toujours de 5s, je ne changerais pas ce paramètre lors des enregistrements.

Est-ce que cela à plus de sens ?

Merci encore pour votre aide
 

camarchepas

XLDnaute Barbatruc
Re : Importer et mettre en forme des données sous excel depuis un fichier XML

Bonjour ,

Donc très simplifié .
Sauf si tu veux modifer le code , ne pas toucher au nom des onglets .

Copies le XML dans l'onglet Export
Cliques sur le sourire de l'onglet resultat .

et voilà.

Si ok , l'on pourrait allez chercher directement les fichiers xml dans le répertoire où ils sont stockés .....
 

Pièces jointes

  • HeartRate_export.xlsm
    21.6 KB · Affichages: 65

ls_alex

XLDnaute Nouveau
Re : Importer et mettre en forme des données sous excel depuis un fichier XML

C'est parfait ! c'est tout à fait ça don't j'ai besoin.
Merci, des heures de gagnées

Tu dis qu'on pourrait importer le XML directement sans avoir besoin de copier/coller ?
 

camarchepas

XLDnaute Barbatruc
Re : Importer et mettre en forme des données sous excel depuis un fichier XML

Oui, tout à fait,
je vois que cela t'intéresses forcement .

Cela fera encore gagner quelques heures.

Je regarde pour la transformation de la source maintenant que l'on a validé le traitement.

Le principe sera donc de lire chaque fichier XML stockés dans un répertoire défini et de resortir les résultats dans un onglet spécifique à chaque fois : Ex :Resultat1 ou mieux peut etre , resultatdateheure du fichier décodé .

je te prépare quelque chose sur ce principe.
 

camarchepas

XLDnaute Barbatruc
Re : Importer et mettre en forme des données sous excel depuis un fichier XML

Et bien voici.

donc j'ai pris l'option d'utiliser le tag Time ppour différencier les fichiers .

pour mes essais , j'ai reconstitué les fichiers xml , j'espère qu'ils sont au bon format .

Merci de ton retour , surtout si ça fonctionne .
 

Pièces jointes

  • XML.zip
    19.7 KB · Affichages: 40
  • XML.zip
    19.7 KB · Affichages: 44
  • XML.zip
    19.7 KB · Affichages: 47

Discussions similaires

Statistiques des forums

Discussions
312 209
Messages
2 086 266
Membres
103 167
dernier inscrit
miriame