Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1209 connectés 

  FORUM HardWare.fr
  Programmation
  ASP

  Création d'un Word ou Excel à partir d'une page ASP

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Création d'un Word ou Excel à partir d'une page ASP

n°1414657
hyptnos
GT : Gui iom
Posté le 27-07-2006 à 15:48:43  profilanswer
 

Bon je débute plus ou moins dans l'ASP et j'aurais besoin d'un petit coup de main.
 
Voila j'ai fait une petite appli de Statistique sur nos intervention informatique, le problème j'ai fait cela sur mon micro mais mon responsable aimerais avoir les resultats (c'est lui qui à demander les stats).
 
Ma page ASP va intererroger la BDD et faire les calculs avec les fonctions que je lui est donné à mangé (calcul du nombre et des moyenne annuel, par utilisateur , etc...)
 
C'est bien beau le tout bien classé dans des TR et TD en HTML.
 
Maintenant y à t'il un moyen d'exporté la page t'elle qu'elle est directement dans un word. J'ai fait un copier collé de chaque tableau ca marche bien mais si je pouvais automatisé tout cela et de préférence avec un affichage paysage cela serait l'amérique.
 
Merci par avance

mood
Publicité
Posté le 27-07-2006 à 15:48:43  profilanswer
 

n°1414824
Arjuna
Aircraft Ident.: F-MBSD
Posté le 27-07-2006 à 17:33:16  profilanswer
 

tu génères une stupide page HTML toute simple avec un bête tableau dedans, et tes valeurs (pour le cas du excel), ou des suites de balises <hx> et <p> pour word
 
et tu ajoutes le header "content-type:
<%response.ContentType="application/vnd.ms-excel"%>
ou
<% response.ContentType ="application/msword" %>

n°1414836
hyptnos
GT : Gui iom
Posté le 27-07-2006 à 17:46:04  profilanswer
 

Et Hummm la ca me dépasse un petit peu
je demande pas la reponse mais si tu avais un petit exemple cela serait bien sympathique car je debute dans l'asp :)

n°1414876
MagicBuzz
Posté le 27-07-2006 à 19:08:11  profilanswer
 

et ben...
 
ouvre notepad.
 
écrit une page html bidon (avec tous les tables html, head et body comme il faut)
 
fout dedans un titre (h1) un sous-titre (h2) et quelques paragraphes (p)
 
enregistre sous le nom "toto.doc"
 
double-clic sur le fichier
=> word s'ouvre, et t'affiche ta page au format "word", en conservant la mise en forme et tout.
 
là, je te demande de faire pareil, mais en ASP :
- tu génères une page HTML en ASP, comme si tu affichais simplement tes résultats
- et tu ajoutes le content-type disant au navigateur qu'il ne s'agit pas d'un document HTML, mais Word
 
et là, quand tu chargeras la page avec internet explorer ou firefox ou autre, ça va ouvrir word et te mettre le document à l'écran.
 
idem pour excel, sauf que là, il faut faire un tableau (logique).
 
a noter que tu peux aussi faire la solution plus évoluée, mais qui reste globalement la même.
 
ouvre word 2000 ou plus. crée un fichier bateau, genre un titre et un paragraphe.
enregistrer sous > format htlm
 
=> édite le source. c'est du HTML un peu gore, que word comprendra mieux que du html classique. il permet notamment de mettre des directives pour word, genre le type d'affichage, le format du papier, etc.
 
de la même façon, tu te démerdes pour que ton asp te génère une page identique. et en content-type, toujours word (cf les balises asp que j'ai mis ci-dessus).
 
et hop !
 
tu peux même foutre des images et des macros dans ton document si tu utilises le format html à la sauce word.

n°1415292
rufo
Pas me confondre avec Lycos!
Posté le 28-07-2006 à 14:51:44  profilanswer
 

sinon, méthode bourrin : COM. tu ouvres une instance de word ou excel via COM et tu génères ta page en VBA...

n°1415324
Arjuna
Aircraft Ident.: F-MBSD
Posté le 28-07-2006 à 15:24:57  profilanswer
 

ouais, mais depuis le serveur (ASP) c'est moyen car :
1/ faut Office installé sur la machine
2/ s'assurer que JAMAIS l'ASP ne puisse planté durant la génération, sous réserve d'avoir des milliers de process word et excel en mémoire au bout de quelques heures
3/ une machine de folie, pour qu'elle puisse ouvrir word, jouer dedans, enregisrter le fichier, et fermer word, avant que la page n'expire (sans compter que plusieurs utilisateurs peuvent générer un fichier en même temps)
4/ ouvrir une faille de sécurité, à savoir habiliter le user de IIS à lancer word, avec tous les risques liée (lancer une macro-virus depuis word, etc.)
 
bref, l'idée est bonne car plus "propre" que celle que je propose. mais dans l'absolu, elle apporte plus de contraintes qu'autrechose.
et elle n'est guère plus simple à mettre en oeuvre.

n°1415353
rufo
Pas me confondre avec Lycos!
Posté le 28-07-2006 à 15:39:23  profilanswer
 

ben qand je disais que c'était bourrin :D
 
Plus sérieusement, vu qu'il parlait d'une petite appli, a priroi, c'est utilisé que par peu d'utilisateurs à la fois et pas souvent. Ca a l'air aussi d'être une appli en intranet. Ma solution peut donc être viable sous ces conditions.

n°1415359
Arjuna
Aircraft Ident.: F-MBSD
Posté le 28-07-2006 à 15:43:14  profilanswer
 

il a intérêt à mettre un gros "ON ERROR RESUME NEXT" tout en haut de sa page alors :D

n°1415510
hyptnos
GT : Gui iom
Posté le 28-07-2006 à 17:59:32  profilanswer
 

Oui c'est simplement un intranet juste pour moi mais les resultat doivent aller au directeur d'ou la necessite de generer le word ou le excel :)

n°1415522
MagicBuzz
Posté le 28-07-2006 à 18:25:39  profilanswer
 

sinon, je suppose que tu récupère les données depuis une base de données ?
y'a des tas d'outils pour générer des tableau, graphiques, etc aux formats office et pdf.
pour sql server, il y a par exemple sql server report, qui est directement livré avec

mood
Publicité
Posté le 28-07-2006 à 18:25:39  profilanswer
 

n°1415580
hyptnos
GT : Gui iom
Posté le 28-07-2006 à 21:15:33  profilanswer
 

Ah je connais pas  
 
Sinon j'utilise mysql et je crois pas qu'un outils de ce genre soit présent

n°1415616
MagicBuzz
Posté le 28-07-2006 à 22:59:26  profilanswer
 

par directement avec mysql.
 
mais ça me ferait mal au c*l qu'il n'existe pas un outils genre "mybo" qui fasse la même chose.
je pense qu'à la limite, c'est pas plus mal que tu te bases sur un truc de ce genre, qui permettent une plus grande autonomie à celui qui s'en sert

n°1421287
pfourment
Posté le 07-08-2006 à 10:18:33  profilanswer
 

MagicBuzz a écrit :

par directement avec mysql.
 
mais ça me ferait mal au c*l qu'il n'existe pas un outils genre "mybo" qui fasse la même chose.
je pense qu'à la limite, c'est pas plus mal que tu te bases sur un truc de ce genre, qui permettent une plus grande autonomie à celui qui s'en sert


 
De mon côté, j'ai beau chercher, je ne trouve pas d'outils "tout fait" pour mysql mais ça vonctionne très bien avec
Response.ContentType = "application/vnd.ms-excel"
J'ai un soucis supplémentaire quant à mon ectraction, je veux choisir, via un formulaire, quelles données extraire.
J'explique... J'ai des champs qui parfois ne doivent pas être affichés. J'ai donc créer une page de choix avec tout un tas de boîtes à cocher.
Je récupère ces valeurs et je veux sortir mon tableau excel.
J'arrive à afficher les entêtes avec  
for i = 1 to Request.Form("choix" ).Count
%>
<TH><%Response.Write "" & Request.Form("choix" )(i)%></TH>
Par contre, je plante complêtement pour ma requête et l'affichage des données..
Si quelqu'un a une idée...
Merci


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  ASP

  Création d'un Word ou Excel à partir d'une page ASP

 

Sujets relatifs
Faire refresher la page dans une servletInserser et lire fichier word dans base de donnees SQL
Valider une page en xmlrécupérer chaque jour des donées dans un nouveau fichier Excel
[Fortran] Renommer un fichier à partir d'une variableImpression page html
Changement de couleur sous excelColler une valeur en mémoire en provenance d'excel dans une macro
Création site Webplusieurs types de puce sur une mem page
Plus de sujets relatifs à : Création d'un Word ou Excel à partir d'une page ASP


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR