Personnaliser des séparateurs ("à la XML")

Bonjour,

Voilà, je souhaiterais exporter une feuille Excel (v. 2003) en texte en utilisant comme séparateurs de champ les noms en en-tête des colonnes pour en faire un traitement derrière, du style :

NOM | PRENOM | ADRESSE

MARTIN | PAUL | 12 RUE DE LA REPUBLIQUE

devient dans le fichier texte exporté :

<NOM>MARTIN</NOM><PRENOM>PAUL</PRENOM><ADRESSE>12 RUE DE LA REPUBLIQUE</ADRESSE>

Ce qui revient à créer un fichier structuré où les balises reprennent les noms des colonnes.

Avez-vous une solution simple ?

Bonjour,

Je ne comprends pas fort bien la question : exporter vers où ?

Peut-être qu'avec un petit exemple en pièce jointe ce sera plus facile.

dré

Bonjour

S'il s'agit de rédiger selon le modèle:

1) Avec les codes de caractères

=CAR(60)&$A$1&CAR(62)&A2&CAR(60)&CAR(47)&$A$1&CAR(62)&CAR(60)&$B$1&CAR(62)&B2&CAR(60)&CAR(47)&$B$1&CAR(62)&CAR(60)&$C$1&CAR(62)&C2&CAR(60)&CAR(47)&$C$1&CAR(62)

2) Avec les textes ">", ">" et "/"

="<"&$A$1&">"&A3&"</"&$A$1&"><"&$B$1&">"&B3&"</"&$B$1&"><"&$C$1&">"&C3&"</"&$C$1&">"

Les 2 formules s'incrémentent normalement.

Pour obtenir le résultat sous forme de texte pur, il suffit de faire un copier-collage spécial-Valeurs.

Cordialement

Je précise : j'importe un fichier issu d'une base de données dans Excel et je fais le ménage dans les enregistrements sous Excel. Lorsque c'est terminé, je désire enregistrer sous (ou exporter) l'ensemble des données dans un fichier au format texte ASCII mais avec comme séparateur encadrant les champs non pas une tabulation ou un ";" (comme dans CSV), mais des balises du style XML dont le nom reprend l'en-tête de colonne que j'ai défini sous Excel, comme dans l'exemple ci-dessus. La solution est peut-être une macro qui me fait cette manip sous Excel ? Mais je ne sais pas faire.

Salut le forum

Ligne 1 tes titres (A1, B1 et C1)

Ligne 2 et suivantes tes noms, prénoms et adresse

Code à mettre dans un module

Public Const Nom1 = "<NOM>"
Public Const Nom2 = "</NOM>"
Public Const Prenom1 = "<PRENOM>"
Public Const Prenom2 = "</PRENOM>"
Public Const Adresse1 = "<ADRESSE>"
Public Const Adresse2 = "</ADRESSE>"

Sub Exportation_Texte()
Dim Lg As Long
Open "Carnet.txt" For Output As #1
For Lg = 2 To Range("A65536").End(xlUp).Row
Print #1, _
Nom1; Cells(Lg, 1); Nom2; _
Prenom1; Cells(Lg, 2); Prenom2; _
Adresse1; Cells(Lg, 3); Adresse2
Next Lg
Close #1
End Sub

Mytå

Rechercher des sujets similaires à "personnaliser separateurs xml"