Il existe des formats de tableurs ('libres') exprimés en XML : gnumeric,
open office.
Il existe également des librairies capables de transformer ces entrées
en fichiers excel.
C'est par exemple le cas de POI ( http://jakarta.apache.org/poi/ ), une
API Java du groupe Apache.
Je l'ai utilisé, il y a quelques temps pour générer des tableaux excel à
partir de fichiers XML dans Cocoon.
Le schéma est donc le suivant :
Source XML -> Transformation XSLT -> format Gnumeric -> POI -> fichier
excel.
Il existe certainement d'autres API, peut-être dans d'autres langages.
Voici un exemple simple de fichier XML Gnumeric :
<gmr:Workbook xmlns:gmr="http://www.gnome.org/gnumeric/v7">
<gmr:SheetNameIndex>
<gmr:SheetName>Sheet1</gmr:SheetName>
</gmr:SheetNameIndex>
<gmr:Sheets>
<gmr:Sheet>
<gmr:Name>Sheet1</gmr:Name>
<gmr:MaxCol>-1</gmr:MaxCol>
<gmr:MaxRow>-1</gmr:MaxRow>
<gmr:Cells>
<!-- add your cells here -->
</gmr:Cells>
</gmr:Sheet>
</gmr:Sheets>
</gmr:Workbook>
Une documentation plus complète se trouve à :
http://www.jfree.org/jworkbook/gnumeric-xml.pdf
D'après mes souvenirs, les options de mise en forme sont assez
sommaires, mais cela permet de sortir des fichiers excel avec des
données que l'utilisateur peut donc manipuler à sa guise.
Stephane Bonhomme a écrit :
>
> Bonjour,
>
> J'ai deja eu a implémenter cette fonctionalité pour un site que je
> développe, j'ai envisagé plusieurs approches pour cela :
>
> - Générer un fichier csv à l'aide de xslt : cela est facilement
> réalisable mais a l'inconvénient de ne pas pouvoir proposer certaines
> fonctionalités (pas de style, pas de fusion de cellules).
> - Ecrire un filtre d'import des données xml dans OpenOffice.org (les
> filtres sont écrits en xslt), l'utilisateur peut alors importer
> directement les données XML brutes dans la feuille de calcul.
> - Ecrire une transformation XSLT qui transforme les données XML source
> dans une forme très proche de l'export HTML d'excel. Cela marche bien,
> mais réclame un travail préalable, voici la démarche que j'ai suivie :
>
> - Créer un exemple de le forme de la feuille de calcul dans Excel
> - Exporter la feuille de calcul en HTML dans Excel
> - Nettoyer le fichier généré pour le rendre xml (suppression des
> commentaires contenant la chaine --, suppression des balises o:..,
> fermeture des balises non fermées, ajout des quotes autour des valeurs
> d'attributs...), pour cela l'outil xmllint (xmlsoft.org) m'a beaucoup aidé.
> - Vérifier que le fichier "nettoyé" s'ouvre toujours correctement dans
> Excel (je n'ai pas eu de surprises à ce niveau)
> - Développer la feuille de style permettant de générer un fichier
> similaire, avec les données extraites du XML source.
>
> Du point de vue serveur, si l'url de fichier renvoyé se termine par .xls
> et renvoie le type mime application/vnd.ms-excel, le document s'ouvre
> directement dans Excel lors du téléchargement.
>
> Si cela peut vous aider, ce xsl est disponible sur :
> http://waloo.homelinux.net:8082/export/excel.xsl
>
> Inconvénient : ce document ne peut être ouvert que dans Excel (non
> compatible avec les autres tableurs : oo.o, gnumeric...)
>
> Cordialement,
> Stéphane.
>
> Agnès RUBLON wrote:
>
> >Bonjour,
> >
> >En fait le XSL est a l'origine un XML avec des donnees brutes.
> >Nous voudrions que l'utilisateur puisse recuperer les donnees (le xml) et la presentation (affichage ou non de certaines donnees ainsi que la langue) dans un fichier qu il puisse downloader.
> >
> >Merci
> >
> >Agnes RUBLON
> >
> >-----Message d'origine-----
> >De : Eric van der Vlist [mailto:vdv@dyomedea.com]
> >Envoyé : mercredi 9 novembre 2005 18:02
> >À : xml-tech@xmlfr.org
> >Objet : [xml-tech] Re: XSL: Export dans un fichier Excel
> >
> >Bonjour,
> >
> >Le mercredi 09 novembre 2005 à 17:56 +0100, Agnès RUBLON a écrit :
> >
> >
> >>Bonjour,
> >>
> >>Je voudrais savoir s'il est possible d'exporter un XSL en fichier Excel.
> >>
> >>
> >
> >Exporter un .xsl en .xls en quelque sorte :-) ?
> >
> >A part le fait que ce sont deux permutations des lettres "x", "s" et "l", je ne vois pas bien quels sont les points communs enter ces deux types de fichiers qui permettraient de convertir l'un en l'autre!
> >
> >De quel type d'export voulez vous parler?
> >
> >Eric van der Vlist
> >
> >--
> >Le premier annuaire des apiculteurs 100% XML!
> > http://apiculteurs.info/
> >------------------------------------------------------------------------
> >Eric van der Vlist http://xmlfr.org http://dyomedea.com
> >(ISO) RELAX NG ISBN:0-596-00421-4 http://oreilly.com/catalog/relax
> >(W3C) XML Schema ISBN:0-596-00252-1 http://oreilly.com/catalog/xmlschema
> >------------------------------------------------------------------------
> >
> >
> >--
> >Devenez redacteur <XML>fr et contribuez au developpement du
> >xml francophone (http://xmlfr.org/infos/redacteurs/) !
> >
> >Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
> >
> >Cette liste est a votre disposition pour discuter en francais de
> >tout sujet technique lie a XML.
> >
> >Pour resilier votre abonnement, envoyez un message contenant
> >la commande "unsubscribe" a xml-tech-request@xmlfr.org
> >(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
> >
> >
> >
> >--
> >Devenez redacteur <XML>fr et contribuez au developpement du
> >xml francophone (http://xmlfr.org/infos/redacteurs/) !
> >
> >Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
> >
> >Cette liste est a votre disposition pour discuter en francais de
> >tout sujet technique lie a XML.
> >
> >Pour resilier votre abonnement, envoyez un message contenant
> >la commande "unsubscribe" a xml-tech-request@xmlfr.org
> >(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
> >
> >---------------------------------------------------------------------------------------
> >Wanadoo vous informe que cet e-mail a ete controle par l'anti-virus mail.
> >Aucun virus connu a ce jour par nos services n'a ete detecte.
> >
> >
> >
> >
> >
>
> --
> Stéphane Bonhomme -- Exselt Services
>
> Formations, Conseil et Réalisations en Ingénierie Documentaire,
> Technologies Web et Logiciels Libres
> s.bonhomme@wanadoo.fr - http://www.exselt.com
> 04 76 17 09 40 / 06 88 57 27 08
>
> --
> Devenez redacteur <XML>fr et contribuez au developpement du
> xml francophone (http://xmlfr.org/infos/redacteurs/) !
>
> Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
>
> Cette liste est a votre disposition pour discuter en francais de
> tout sujet technique lie a XML.
>
> Pour resilier votre abonnement, envoyez un message contenant
> la commande "unsubscribe" a xml-tech-request@xmlfr.org
> (mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
**********************************************************************************************
IMPORTANT: The contents of this email and any attachments are confidential. They are intended for the
named recipient(s) only.
If you have received this email in error, please notify the system manager or the sender immediately and do
not disclose the contents to anyone or make copies thereof.
*** eSafe scanned this email for viruses, vandals, and malicious content. ***
**********************************************************************************************
-- Binary/unsupported file stripped by Ecartis --
-- Type: text/x-vcard
--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de
tout sujet technique lie a XML.
Pour resilier votre abonnement, envoyez un message contenant
la commande "unsubscribe" a xml-tech-request@xmlfr.org
(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
Received on Thu Nov 10 12:48:56 2005