arbre
 

Produire un document Word ou Excel en ASP

Vous avez peut être un jour voulu transmettre des données exploitables à vos visiteurs. Une simple page HTML n' est pas très conviviale, lorsqu' il s' agit d' informations devant être travaillées. Il existe un système complexe qui permet de créer, sur le serveur, un objet Microsoft Excel par exemple et de remplir les différentes cellules. Je trouve l'opération complexe, pour l' avoir testé moi-même. Et encore faut-il qu' Excel soit installé sur le serveur!!!
Il existe une solution très simple. Elle consiste à tromper l' ordinateur qui reçoit les informations en utilisant l' entête ContentType. Examinons cette propriété de l' objet Response dans le détail.

Définition du type de contenu

Lorsque le serveur Web renvoie un fichier à un navigateur, il indique au navigateur le type de contenu se trouvant dans le fichier. Cela permet au navigateur de déterminer s' il peut afficher le fichier lui-même ou s' il doit faire appel à une autre application. Par exemple, si le serveur Web renvoie une feuille de calcul Microsoft Excel, le navigateur doit être en mesure de démarrer une session de Microsoft Excel pour afficher la page. Le serveur Web reconnaît les types de fichiers en mappant leurs extensions vers une liste de types MIME (Multipurpose Internet Mail Extensions). Par exemple, pour démarrer Microsoft Excel, le navigateur doit reconnaître le type application/vnd. ms-excel MIME.

<%response.ContentType="application/vnd.ms-excel"%>

ContentType

La propriété ContentType spécifie le type de contenu HTTP de la réponse. Si la propriété ContentType n' est pas spécifiée, le type par défaut est text/HTML.

Syntaxe

Response.ContentType [= TypeContenu ]

Paramètres

TypeContenu
Chaîne décrivant le type de contenu. Cette chaîne présente en général le format type/soustype où type est la catégorie générale du contenu et soustype est le type de contenu spécifique.

Exemple des valeurs les plus courantes :

<% Response.ContentType = "application/x-cdf" %> Type de contenu CDF (Channel Definition Format).
< % Response.ContentType = "text/HTML" %> Page HTML normale
< % Response.ContentType = "image/GIF" %> Image
< % Response.ContentType = "image/JPEG" %> Image
< % Response.ContentType = "text/plain" %> Fichier Texte. (avec cette entête, il devrait être possible de voir le source de la page. Mais malheureusement, cela fonctionne très mal)
<% response.ContentType ="application/msword" %> Document Word
<% response.ContentType ="application/x-excel" %> Document Excel

En cliquant sur ce lien, vous recevrez un fichier qui contient le code suivant :

<%response.ContentType="application/vnd.ms-excel"%>
<html>
<body> <table> <tr> <td>1</td> <td>2</td> <td>3</td> <td>4</td> </tr> <tr> <td>5</td> <td>6</td> <td>7</td> <td>8</td> </tr> </table> </body> </html>

Contenu xls

D' autres exemples :

< % Response.ContentType = "text/plain" %>
(Entête qui ne fonctionne pas)
Voir
<% response.ContentType ="application/msword" %> Voir
Toutes les heures, le serveur contrôle que votre site est en ligne. En cas de problème, un mail vous est envoyé.
Vous avez l'habitude d'oublier les dates importantes? Oubli vous prévient gratuitement par email !

Page modifiée le 17/06/2010 105 visiteur(s) aujourd'hui
Comment créer son site

Produire un document Word/Excel