Import sélection de données XML dans Excel dans l'ordre que je souhaite & Export CSV

HBVS

XLDnaute Nouveau
Bonjour à tous :D

je fais partie d'une association de bénévoles et j'ai un grand besoin d'aide dans l'utilisation des scripts Visual Basic et Excel.

Pour commencer, je donne donc quelques informations indispensables: je bosse avec Excel 2010 sous Windows 7.



1ère étape:

Nous allons recevoir au compte goutte des fichiers de données XML tels que ceux nommés "document_recu_*" dans la pièce jointe.

Dans le fichier Excel nommé "projet_HBVS", que j'ai aussi mis en pièce jointe, nous souhaiterions en un click:

- importer automatiquement seulement certaines des données des fichiers XML reçus:
<tournoi></tournoi>, <ville></ville>, <dep></dep>, <datedebut></datedebut> et <datefin></datefin>
(Les données <categorie></categorie>, <jaccepte1></jaccepte1>, <jaccepte2></jaccepte2> doivent donc être ignorées)

- que ces données se retrouvent automatiquement dans le fichier Excel dans l'ordre suivant :
Date de début, Date de fin, Tournoi, Département, Ville
(voir fichier Excel nommé "projet_HBVS" ne pièce jointe)

- pouvoir importer automatiquement et au fur et à mesure les fichiers XML reçus que nous avons tous regroupés dans un même dossier (donc tout en évitant les doublons)



2ème étape:

Ce fichier Excel nous servira à plusieurs choses:
- publipostage (pas de problème jusque là)
- statistiques diverses (pas de problème encore)
- sortir un fichier csv pour mettre à jour le calendrier de notre site (c'est là qu'il y a problème)

Nous souhaiterions donc que le tableau Excel "projet_HBVS" puisse automatiquement (en un click? ou 2?):
- réordonner les tournois par date croissante
- sortir un fichier CSV (séparé par des ; )



Voilà pour la présentation globale, j'espère avoir été clair et ne rien avoir oublié :)

J'ai déjà quelques informations et solutions que je vais détailler en reply à ce post mais mes connaissances en VB et Excel étant loin d'être extraordinaire, je bloque vite...

Je vous remercie et d'ailleurs nous vous remercions d'avance pour votre aide :eek:
 

Pièces jointes

  • Excel - projet_HBVS et docs XML reçus.zip
    7.9 KB · Affichages: 78

HBVS

XLDnaute Nouveau
Re : Import sélection de données XML dans Excel dans l'ordre que je souhaite & Export

Pour la 1ère étape, comme annoncé plus haut, voilà ce que j'ai trouvé:

J'arrive à importer tout le tableau mais pas à sélectionner les données à importer, ni leur ordre d'apparition dans le tableau Excel, grâce à ce code:
Code:
Sub Import_XML()
Dim MyPath As String
Dim MyFile As String

MyPath = "D:\XML_Dir\"
MyFile = Dir(MyPath & "*.xml")

Do Until MyFile = ""
  Application.DisplayAlerts = False
    ActiveWorkbook.XmlImport _
        URL:=MyPath & MyFile, _
        ImportMap:=Nothing, _
        Overwrite:=True, _
        Destination:=Range("$B$" & Cells(Rows.Count, "B").End(xlUp).Row + 1)
  Application.DisplayAlerts = True
  MyFile = Dir
Loop

End Sub




Pour la 2ème étape pour laquelle j'ai pas trop cherché pour l'instant, la 1ère étape m'ayant pris j'avoue beaucoup de temps, je parviens à enlever le mappage (si je ne dis pas de bêtises, c'est nécessaire pour réordonner par dates :confused:) en adaptant le code suivant:
Code:
Sub SuppressionMappage()
  Dim Map As Object
  For Each Map In ThisWorkbook.XmlMaps
    Map.Delete
  Next
End Sub


Voilà ce que j'ai trouvé, il nous manque donc beaucoup de choses et j'espère sincèrement que vous pourrez nous aider ;)
 

HBVS

XLDnaute Nouveau
Re : Import sélection de données XML dans Excel dans l'ordre que je souhaite & Export

Bonjour à tous,
je remonte mon sujet pour dire que j'ai bien avancé dans mon projet, mais j'ai encore un soucis.

J'utilise une macro pour exporter au format CSV la feuille 1 du classeur donné en pièce jointe en conservant les cellules vides au niveau des lignes remplis. Jusque là pas de souci...

Mon problème est que cet export fait apparaître aussi les lignes vides à la fin du tableau dans le fichier CSV matérialisées des ",,,," .

Si quelqu'un peut m'aider à faire disparaître automatiquement ces lignes vides (",,,," dans le CSV) lors de l'export (ou plus simplement à ne pas les exporter) svp.

Merci pour votre aide!
 

Pièces jointes

  • ClasseurTest.xlsx
    9 KB · Affichages: 128
  • ClasseurTest.xlsx
    9 KB · Affichages: 141
  • ClasseurTest.xlsx
    9 KB · Affichages: 146

Discussions similaires

Statistiques des forums

Discussions
312 219
Messages
2 086 369
Membres
103 197
dernier inscrit
sandrine.lacaussade@orang