Affichage d'une feuille de calcul Excel en
ASP (IIS)
Nadine Cheff, rédacteur sur les
technologies Web,
équipe de documentation des services d'informations sur Internet
Microsoft Corporation
15 novembre 1999
Cette astuce permet de faire afficher
une feuille de calcul Microsoft
Excel
sur une page ASP (Active Server Page). Parmi les composants de serveur fournis en standard
avec ASP se trouvent les objets ADO (ActiveX Data Objects). La programmation propre à cette
astuce démontre que ADO est un mécanisme de connexion qui permet d'accéder à des données de
tout type.
Pour préparer votre feuille de calcul
Excel à l'affichage sur une page ASP, vous devez suivre les règles suivantes :
N'utilisez pas de mise en forme spéciale ni
d'en-tête de colonne dans la feuille de calcul.
Donnez un nom au classeur :
Ouvrez la feuille de calcul Excel et
mettez en surbrillance les lignes et les colonnes que vous voulez afficher sur la page ASP
(la zone en surbrillance est votre classeur).
Dans le menu Insertion,
sélectionnez Nom et cliquez sur Définir.
S'il existe déjà des noms dans la liste,
sélectionnez-les et cliquez sur Supprimer.
Tapez un nom pour le classeur, cliquez sur
Ajouter puis sur OK.
Donnez à la feuille de calcul le même nom
qu'au classeur :
Cliquez avec le bouton droit sur l'onglet
de la feuille de calcul au bas de la page.
Sélectionnez Renommer.
Saisissez le même nom que pour le classeur
et appuyez sur Entrée.
Enregistrez le classeur dans le dossier
file://WINNT/system32/inetsrv/iisadmin/nimportequelnomdedossier, et dans le
dossier file://inetpub/wwwroot.
Tapez le script suivant et enregistrez-le
dans le dossier file://inetpub/wwwroot.
<HTML>
<HEAD>
<TITLE>Faire afficher une feuille de calcul Excel dans une page ASP</TITLE>
<link rel=".../stylesheet" href="iistanbul.css">
</HEAD>
<BODY BGCOLOR="#FFFFFF" text="#000000" >
<H1>Sommaire</H1>
<p>Utilisez ces liens pour visualiser le contenu pour un
mois donné :
<br><a href="#Aug">août 99</a>††<a href="#Sept">sept 99</a>
<% @language=vbscript %>
<%
Set oConn = Server.CreateObject("ADODB.connection")
strConn = "Driver={Microsoft Excel Driver (*.xls)}; DBQ=" &
Server.MapPath("\iisadmin") "\website\ASPTOC.xls;" 'c'est l'adresse du fichier dans
lequel vous avez enregistré votre classeur
oConn.Open strConn
strCmd = "SELECT * from `ASPTOC `"
Set oRS = Server.CreateObject("ADODB.Recordset")
oRS.Open strCmd, oConn
Response.Write "<TABLE BORDER=1 BGCOLOR=#FFFFFF BORDERCOLOR=#a3a3a3 BORDERCOLORLIGHT=#000000
BORDERCOLORDARK=#767676><tr><td>"
Response.Write oRS.GetString (, -1, "</tr><td>", "</td></tr><tr><td>", NBSPACE)
%>
</TABLE>
</BODY>
</HTML>
Si vous avez suivi ces étapes correctement,
le classeur devrait apparaître à peu près comme ceci sur la page ASP :
L'utilisation de ADO comme mécanisme de
connexion vous permettra d'afficher n'importe quel type de données dans vos pages ASP.