Aide pour extractions de chaines de caractères numérique et texte d’un fichier XML

aristarque

XLDnaute Nouveau
[XL 2003] Aide pour extractions valeurs numérique et texte d’un fichier XML

Bonjour à tous


J’implore votre aide oh !!! Grands maîtres d’excel, car la c’est trop gros pour moi. Je ne sais pas par quel bout commencer. Je suis newbi dans l’élaboration de macro. En général je me sers de l’enregistreur de macro, mais on arrive très vite à ces limites. Mais je demande qu’à progresser. J’arrive à me débrouiller pour adapter ou modifier des macros, mais quand il faut tout construire de A à Z, alors la, il n’y a plus personne !!! Je ne sais pas comment vous pouvez faire pour que puisse apprendre en même temps que vous m’expliquiez ?

Donc voici mon projet. Je me doute bien que c’est un gros bouleau mais si vous pouviez m’aider ca serait cool.
Je participe à des courses de simulation auto sur internet dans une ligue. Plusieurs championnats sont organisés, et un site web les gère. Mais dans celui auquel je participe, il se compose de 3 catégories comportant chacune un certain nombre de courses, avec un classement général par catégorie et un classement général regroupant les 3 catégories. Jusqu’à présent c’était fait à la main, on aimerait donc l’automatiser. Notre jeu de simu (Rfactor) génère un Log en extension de fichier « .XML » dans lequel figure les infos permettant de pouvoir établir le classement de nos courses. J’ai fait un fichier excel « Championnat GTC76.xls » dans lequel figure les exemples des tableaux concernant les différents classements.
Dans les onglets « exemple…. » Se trouve les copies brut d’une partie du fichier XML pour cibler les zones que je veux extraire. Les onglets « Result_course1 », « classement_gen_GTC76 » et « clasmt_TC65-GTC65-GTC76 » sont les tableaux, au final que je souhaiterai. J’aurai donc au final 4 fichiers pour chaque catégorie : TC65 – GTC65 et GTC76, et un 4è qui sera le classement général des 3 catégories « clasmt_TC65-GTC65-GTC76 ». Dans chaque onglet j’ai laissé des indications. S’ils vous manquent des renseignements ou si vous avez besoins de précisions ou des suggestions, je suis à votre écoute.

Merci d’avance pour l’aide dont vous voudrez bien m’accorder.

Cordialement
 

Pièces jointes

  • Championnat GTC76.zip
    26.8 KB · Affichages: 43
  • Championnat GTC76.zip
    26.8 KB · Affichages: 46
  • Championnat GTC76.zip
    26.8 KB · Affichages: 41
Dernière édition:

Bebere

XLDnaute Barbatruc
Re : Aide pour extractions de chaines de caractères numérique et texte d’un fichier X

bonjour Aristarque
dans module1 tu as 2 procédures entete et exemple
le résultat est dans la feuille result
fait ce que j'ai compris
à bientôt
 

Pièces jointes

  • Championnat GTC76.zip
    40.6 KB · Affichages: 44
  • Championnat GTC76.zip
    40.6 KB · Affichages: 45
  • Championnat GTC76.zip
    40.6 KB · Affichages: 50
G

Guest

Guest
Re : Aide pour extractions de chaines de caractères numérique et texte d’un fichier X

Bonjour,

J'ai reconstitué un fichier xml avec les données, d'après ce que j'ai compris de sa structure. Celui ci se trouve dans le .zip joint avec un classeur. Les décompresser dans le même dossier.

Dans VBE (l'éditeur de macro [ALT+F11])
dans le menu outils/Références
dans la liste des références disponibles cocher "Microsoft XMl Vn" (où n est un n° de version)

La macro fonctionne avec le fichier xml joint mais pas forcement avec le fichier log issu de Rfactor qu'il faudrait voir pour adapter.

J'ai nommé la plage de cellules des ecuries "Ecuries".
Il faut que les noms de cette plage de cellules correspondent à une partie des noms qui se trouve dans le fichier.
Par exemple pourquoi avoir rajouté "Team" dans "Rage Hard Racing Team" alors que dans le fichier elle apparait sous "Rage Hard Racing 911 RSR #08"

A+

[Edit] ch'uis pas:cool:,
J'aurais pu dire "Hello Kjin et BeBere"
voilà chose réparée. Salut à vous deux:)
 
Dernière modification par un modérateur:

kjin

XLDnaute Barbatruc
Re : Aide pour extractions de chaines de caractères numérique et texte d’un fichier X

Bonjour, salut Hasco :),
J'ai reconstitué un fichier xml avec les données, d'après ce que j'ai compris de sa structure.
Tu as été bien plus vaillant que moi :D
La bibliothèque MSXML chez moi est la v5 du coup il vaut mieux déclarer
Code:
Dim xDoc As DOMDocument
et du coup
Code:
Set xDoc = New DOMDocument
Encore bravo
A+
kjin
 
G

Guest

Guest
Re : Aide pour extractions de chaines de caractères numérique et texte d’un fichier X

re,

Hello Kjin,

Oui tu as raison, c'est quelque chose que j'ai tendance à oublier avant de poster mes solutions avec référence. J'y pense au début et puis pfff...
Faut que je me le mette dans le crane.

J'ai corrigé et rechargé le fichier dans mon post précédent

Merci pour la correction:)

A+
 
Dernière modification par un modérateur:

aristarque

XLDnaute Nouveau
Re : Aide pour extractions de chaines de caractères numérique et texte d’un fichier X

Bontour à tous

merci déja pour toutes ces réponses:)

voici le lien du fichier xml, Partage-Facile : Fichier 2010_04_05_23_38_02_79sr.xml.html car c'est vrai que ce serait plus juste, en plus je me suis rendu compte qu'il y a plusieurs zones délimités.

j'ai déja regarder ce que m'avais fait bebere et j'ai fait des ch'tites modif avec mon tout petit niveau que j'ai en macro:eek: mais j'aurai besoin de commentaire dans le code il y a des trucs pour lesquels je n'arrive pas à comprendre totalement ce qui se passe??

je vous joint donc le fichier que j'ai modifié Partage-Facile : Fichier championnat_gtc76.xls.html bon, il y a des petits soucis :
dans l'onglet "Result_essai2" ca extrait mais toujours le même pilote vu que j'utilise l'extraction complète du fichier xml qui se trouve dans l'onglet "exemple pilote".
dans l'onglet "Detroit GP USA" j'exécute la même macro, j'ai juste changé le nom de la feuille dans la macro et la ca marche plus????? sauf la partie entête qui fonctionne toujours bien.
j'ai mis des commentaires dans la macro.
j'ai aussi surligné dans l'onglet "exemple pilote les différentes zones en jaune et les parties à extraire en vert.

merci

@++
 
G

Guest

Guest
Re : Aide pour extractions de chaines de caractères numérique et texte d’un fichier X

Bonjour,

t'as testé ce que je t'ai envoyé? Avec ton fichier xml?

Si ça coince, zippe le et dépose le ici, je ne vais pas chercher ailleurs.

A+
 

aristarque

XLDnaute Nouveau
Re : Aide pour extractions de chaines de caractères numérique et texte d’un fichier X

Merci Hasco

j'ai essayé avec le fichier original en xml de rfactor et la macro s'execute sans soucis:) Yes

je te joint quand meme le fichier original xml

j'ai regardé ton code, bon ben, j'suis coulé. pourrais tu me le commenter d'avantage pour essayer de comprendre un peu:eek:.

je vais revenir pour la suite:D

merci encore

@++
 

Pièces jointes

  • 2010_04_05_23_38_02-79SR.zip
    43.1 KB · Affichages: 24
G

Guest

Guest
Re : Aide pour extractions de chaines de caractères numérique et texte d’un fichier X

Re,

Voici le fichier un peu modifié et un peu plus commenté.
Je voulais attendre de voir si cela fonctionnait sur ton fichier original avant de continuer et commenter.

A toi ensuite si tu veux en savoir plus de faire des recherches sur internet sur DomDocument et ses éléments.

Les deux tableaux renommés tblElementsEntetes et tblElementsLignes, servent à faire la jonction entre les elements xml et les resultat attendus dans excel.
xPath = chemin ou TagName dans le fichier Xml
xDestination = destination de l'élément dans la feuille de calcul
xFormat = format attendu pour cet element.(éventuellement convertit en cours de traitement.

A+
 

aristarque

XLDnaute Nouveau
Re : Aide pour extractions de chaines de caractères numérique et texte d’un fichier X

bonjour

encore merci à Bebere, hasco etkjin pour votre aide.

Hasco, j'ai cherchais des infos sur DomDocument. j'ai trouvé sur excel.developpez.com. donc je vais étudier ca et si j'ai d'autres questions je ferai de nouveau appel à vous.

merci encore

@++
 

aristarque

XLDnaute Nouveau
Re : Aide pour extractions de chaines de caractères numérique et texte d’un fichier X

Bonjour à tous

Bon, alors j’ai bossé sur mon projet, et suite à l’aide que vous m’avez apporté, cela a bien avancé. J’ai apporté des petites modifs. J’ai bien trouvé des informations sur DomDocument mais je suis loin d’avoir tout assimilé. J’ai donc encore besoin de vous, les as du VB.
- Tout d’abord dans l’onglet « Rouen 1974 – 1994 » j’ai une erreur du style #VALEUR ! sur la ligne 19 et je ne comprends pas, mais apparemment si je recopie des valeurs sur les lignes en-dessous ca me fait pareil ??
- Ce que j’ai cherché à faire aussi, mais sans succès, c’est de pouvoir sélectionner le fichier XML à traiter, car ils ont tous un nom différent.
- Ensuite j’ai l’onglet « classement_gen_GTC76 » que je dois mettre à jour après chaque course. J’ai mis des formules dans les colonnes mais il faut manuellement modifier les formules pour quelle prenne en compte le nouvel onglet créer après chaque course. Donc je pense qu’avec une macro ca serait beaucoup plus souple. Petite question, j’utilise la fonction SOMMEPROD dans le classement des Ecuries en colonne N mais elle n’arrive pas à récupérer la valeur de la colonne E. si je fais copier et collage spéciale de la valeur dans la colonne F, et bien la ca fonctionne. Pourquoi ??
- Je voulais créer mes 3 autres fichiers concernant les 3 autres catégories, sur le même principe. Je recopié la macro du module1, par copier coller dans un nouveau classeur, mais lorsque je lance la macro j’ai un message d’erreur « Erreur de compilation : Type défini par l’utilisateur non défini » et dans la macro il y a en surlignement « xDoc As DOMDocument » Pourquoi ?

Je sais ca fait long mais ca fait une dizaine de jours de je me creuse la matière grise. Merci d’avance pour aide. Je vous le fichier actuel.

Ooops, j'avais pas mis le bon fichier. je ne l'ai pas sur moi. en rentrant à midi je le joindrai, désolé.


@++
 
Dernière édition:

aristarque

XLDnaute Nouveau
Re : Aide pour extractions de chaines de caractères numérique et texte d’un fichier X

re bonjour

bon voici le fichier

@+
 

Pièces jointes

  • classement Championnat GTC76.zip
    40.6 KB · Affichages: 35
  • classement Championnat GTC76.zip
    40.6 KB · Affichages: 40
  • classement Championnat GTC76.zip
    40.6 KB · Affichages: 39

Discussions similaires

Statistiques des forums

Discussions
312 103
Messages
2 085 324
Membres
102 862
dernier inscrit
Emma35400