IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

[IE6][Java] JavaScript qui exporte du HTML vers de l'Excel


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 6
    Par défaut [IE6][Java] JavaScript qui exporte du HTML vers de l'Excel
    Bonjour,

    Actuellement je suis en train de développer ma première application web dans le cadre d'un stage.

    L'utilisateur remplis un formulaire, le soumet et j'affiche un tableau de statistiques.

    Il m'a été demandé d'ajouter un bouton qui permettrai d'exporter ce dernier tableau en Excel.

    J'ai trouvé sur internet un script qui fonctionne.

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    function ExportExcel(service) {
    	var oExcel;                             // Open Excel
    	var oExcelSheet;                        // Sheet Excel
    	var oWkBooks;
     
    	// COPY THE CURRENT PAGE
    	textRange = document.body.createTextRange();
    	textRange.moveToElementText(divMain);
    	textRange.execCommand('Copy');
     
    	// OPEN EXCEL
    	oExcel = new ActiveXObject('Excel.Application');
    	oWkBooks = oExcel.Workbooks.Add();
    	oExcelSheet = oWkBooks.Worksheets(1);
    	oExcelSheet.Application.Visible = true;                
     
    	oExcelSheet.Activate();
     
    	oExcel.ActiveSheet.Range('A1').Select;
    	oExcel.ActiveCell.PasteSpecial(0,false,false);
     
    	oExcel.ActiveSheet.Cells.EntireColumn.AutoFit;
    	oExcel.ActiveSheet.Cells.EntireRow.AutoFit.AutoFit;
    	oExcel.ActiveSheet.Range('A1').Select;
    	oExcel.saveAs();
     }

    J'ai mis dans une div le tableau, ca marche impec.

    Par contre le titre de mon doc est "Classeur1" et je voudrais savoir comment peut-on changer ca dans ce script ?

    Je n'ai jamais fait de JS, je n'ai rien vu dans la FAQ qui parlais d'ActiveX et d'Excel.

    Cependant je sais que c'est possible d'utiliser la méthode SaveAs mais malheureusement je n'ai pas réussi a trouver des exemples d'utilisation en JS...

    A savoir que mon appli est développée en Java et que j'utilise le framework struts 1.3.8 et que s'il existe une autre méthode que le JS je suis prenneur.

    Bon apres-midi à vous développez.netiens/iennes

  2. #2
    Membre émérite Avatar de sebhm
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2004
    Messages
    1 090
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Landes (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 090
    Par défaut
    Bonjour,

    ce n'est pas vraiment du javascript que tu as là.

    Bon, c'est du javascript, mais qui utilise un activeX, en l'occurence tu utilises l'API Office, qui permet d'attaquer Excel avec à peu près tous les langages.

    ce genre de chose, ca m'a l'air tres 'propriétaire' (cf. Bill Gates). Tu as testé sous Firefox ?? ca doit faire peur (mais je suppose que ce n'est pas grave dans le cadre de ton boulot)

    Sinon, pour la sauvegarde, fais une macro Excel et vois comment la fonction est utilisée en VB, tu ne seras alors pas tres loin de la vérité

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 6
    Par défaut
    Tout d'abord merci pour la rapidité de la réponse !

    Effectivement le problème n'est pas réelement un problème de JS cependant je n'ai pas vraiment le choix des langages malheureusement...

    Je n'ai pas le droit aux macros Excel et ca me parait mal parti pour faire du VB, c'est en discution avec mon maître de stage.

    Je n'ai pas testé sur Firefox vu que tout les utilisateurs sont sur IE6. Mais, oui ca devrait être intéressant de voir le résultat

  4. #4
    Membre émérite Avatar de sebhm
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2004
    Messages
    1 090
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Landes (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 090
    Par défaut
    je ne te dis pas de faire du VB, mais inspire t'en pour comprendre comment utiliser la fonction de sauvegarde.
    Je suis sur que tester sur Firefox sera tres interessant !!

Discussions similaires

  1. Exporter Tableau Html vers Excel en UTF-8
    Par Steufa dans le forum jQuery
    Réponses: 6
    Dernier message: 15/08/2014, 11h24
  2. export PHP/HTML vers EXCEL
    Par fthem dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 13/03/2013, 19h31
  3. Export tableau HTML vers Image PNG/JPG
    Par nic2t dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 06/07/2009, 09h08
  4. [Excel] Exportation tableau html
    Par Dakuan dans le forum Bibliothèques et frameworks
    Réponses: 16
    Dernier message: 17/09/2008, 20h19
  5. [Excel] PHP-MYSQL exportation de données vers un fichier excel
    Par toure32 dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 19/10/2005, 19h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo