Comprends pas.
J'ai une page ASP qui génère grossomodo ce code :
<table>
<tr>
<td><b>toto</b></td>
<td><i>titi</i></td>
</tr>
<tr>
<td bgcolor="green">1</td>
<td><font color="red">2</font></td>
</tr>
</table>
Si vous collez ça dans notepad et que vous enregistrez en tant que "truc.xls", si vous ouvre la chose dans Excel 2000 ou +, vous allez voir un joli tableau Excel avec vos infos toutes jolies avec les couleurs et tout.
Bon, je me sert de cette astuce pour faire des états depuis un site sous forme de fichiers Excel, et ça marche très bien.
Pour qu'Excel s'ouvre directement lors du chargement de la page, j'utilise ce code :
Response.ContentType = "application/x-excel"
Response.AddHeader "Content-Disposition", "attachment; filename=export.xls"
La première ligne indique au navigateur que le fichier chargé est de type Excel.
Quand à la seconde, elle force le nom à "export.xls"
Parfait.
Excel s'ouvre bien. Dans la barre de titre, j'ai "export[1].xls"
Je comprendrai jamais la raison de ce "[1]" m'enfin bon, c'est pas gênant...
Par contre, si je fais "save as", ce con me propose "export 1 .xls" (avec les guillemets, donc ça plante) et avec un format "*.html" sélectionné par défaut !
Du coup l'utlilisateur doit se ratapper le bon nom de fichier et le bon type... C'est pas bloquant, mais c'est chiant.
J'ai oublié quoi dans mes headers HTTP ? Il faut un autre truc ?