Trucsweb.com

Forum de discussion

 Forum « Programmation ASP » (archives)

Re: asp en excel

Envoyé: 14 janvier 2002, 6h44 par Oznog


Salut,

Tu as plusieurs options.

1. Utiliser ADO pour ouvrir un document Excel et le mettre à jour comme s'il s'agissait d'une base de données.
http://support.microsoft.com/default.aspx?scid=kb;EN-US;q195951

2. Tu peux le faire en observant un document CSV dans notepad. Tu reproduit la même chose.

3. Utilise ce code
<% ' Script de Dom - webmaster@domchauvet.com
' actif sur http://www.domchauvet.com/delta

Action = left(ucase(Request("Action")),5)
If Action = "RECEV" Then ' Arrivée du formulaire

' 1. Mémorisation de l'adresse E-mail dans un cookie

Response.Cookies("deltamail")= Request("Mail")
Response.Cookies("deltamail").Expires = Date+365
Response.Cookies("deltamail").Domain="domchauvet.com"
Response.Cookies("deltamail").Path = "/delta"

' 2. Tri de la Base de Données

Set OBJdbConnection = Server.CreateObject("ADODB.Connection")
OBJdbConnection.Open "nom_de_la_base"
SQLQuery = "SELECT nom,prénom,total,rang FROM nom_de_la_table " _
& "WHERE total > 0 ORDER BY total DESC "
Set RS = OBJdbConnection.Execute(SQLQuery)

' 3. Création du fichier

Set FSO = Server.CreateObject("Scripting.FileSystemObject")
dim dir : dir = Server.MapPath("/images")
set inF = FSO.CreateTextFile(dir & "\" & Request("type"))

' Fichier au format Excel (.slk)
if right(Request("type"),3)="slk" then
inF.writeLine"ID;PWXL;N;E" ' Début du codage excel
' chr (34) remplace les guillements à la suite de l'instruction
inF.writeLine"C;Y1;X1;K"&chr(34)&("PLACE")&chr(34)
inF.writeLine"C;Y1;X2;K"&chr(34)&("NOM")&chr(34)
inF.writeLine"C;Y1;X3;K"&chr(34)&("PRENOM")&chr(34)
inF.writeLine"C;Y1;X4;K"&chr(34)&("POINTS")&chr(34)
i=2 ' Affichage à partir de la ligne 2
While Not rs.eof
inF.writeLine"C;Y"&(""&i&";X1;K")&(rs("Rang"))
inF.writeLine"C;Y"&(""&i&";X2;K")&chr(34)&(rs("Nom"))&chr(34)
inF.writeLine"C;Y"&(""&i&";X3;K")&chr(34)&(rs("Prénom"))&chr(34)
inF.writeLine"C;Y"&(""&i&";X4;K")&(rs("TOTAL"))
i=i+1
Rs.MoveNext
wend
inF2.writeLine"E" ' Fin du codage excel

' ou fichier au format texte (.txt)
else
inF.writeLine("Rang"&";"&"Nom"&";"&"Prénom"&";"&"Points")
While Not rs.eof
inF.writeLine(rs("Rang")&";"&rs("Nom")&";"&rs("Prénom")&";"&rs("TOTAL")&";")
Rs.MoveNext
wend
end if
inF.close

' 4. Fermeture de la connexion à la BD

RS.close : set RS = nothing
OBJdbConnection.close : set OBJdbConnection = nothing

' 5. Envoi du fichier par ASPMail

Set Mailer = Server.CreateObject("SMTPsvg.Mailer")
Mailer.FromName = "DomChauvet"
Mailer.FromAddress= "webmaster@domchauvet.com"
Mailer.RemoteHost = "SMTP.domchauvet.com"
Mailer.AddRecipient Request("Mail"), Request("Mail")
Mailer.AddAttachment dir&"\"&Request("type")
Mailer.Organization = "Site Deltaplane"
Mailer.Subject = "Le classement des sélectives"
strBody = "Voici le classement des sélectives à ce jour." & VbCrLf
strBody = strBody & "Nom du fichier joint "&Request("type")&"." & VbCrLf
strBody = strBody & "Amicalement. DomChauvet" & VbCrLf
Mailer.BodyText = strBody
if Mailer.SendMail then
msg="Félicitations : Le classement est dans votre boite aux lettres" _
& "<br>Fichier : "&Request("type")
else
msg="Problème d'envoi<br>"&Mailer.Response
end if

End If %>

<html><head><title>Classement national</title>
</head><body>
<%if msg="" then%>
<p align="center"><b>Obtenir tout de suite ce <u>classement complet</u>
dans un fichier "Excel" ou "texte"</b></p>

<form method="POST" action="classement_excel.asp">
<table border="0" cellspacing="1" width="500">
<tr>
<td>Recevez ce fichier en indiquant simplement</td>
</tr><tr>
<td><select size="1" name="type">
<option value="classement_excel.slk">excel</option>
<option value="classement_texte.txt">texte</option>
</select> le type de fichier choisi</td>
</tr><tr>
<td><input type="text" name="Mail" size="22"
value="<%=Request.Cookies("deltamail")%>"> votre e-mail</td>
</tr><tr>
<td><input type="submit" value="Recevoir" name="Action">
un seul clic suffit ...</td>
</tr>
</table>
</form>

<p>La version excel (fichier *.slk) est compatible avec Excel</p>
<p>La version texte (fichier *.txt) est compatible avec Word, Works, Word Pad etc....</p>

<%else%>
<br>
<p align="center"><b><%=msg%></b></p>
<%end if%>

</body></html>

Ciao
Oznog


Réponses

 Aucune réponse à ce message... 
Aucun médias sociaux
X

Trucsweb.com Connexion

Connexion

X

Trucsweb.com Mot de passe perdu

Connexion

X

Trucsweb.com Conditions générales

Conditions

Responsabilité

La responsabilité des Trucsweb.com ne pourra être engagée en cas de faits indépendants de sa volonté. Les informations mises à disposition sur ce site le sont uniquement à titre purement informatif et ne sauraient constituer en aucun cas un conseil ou une recommandation de quelque nature que ce soit.

Aucun contrôle n'est exercé sur les références et ressources externes, l'utilisateur reconnaît que les Trucsweb.com n'assume aucune responsabilité relative à la mise à disposition de ces ressources, et ne peut être tenue responsable quant à leur contenu.

Droit applicable et juridiction compétente

Les règles en matière de droit, applicables aux contenus et aux transmissions de données sur et autour du site, sont déterminées par la loi canadienne. En cas de litige, n'ayant pu faire l'objet d'un accord à l'amiable, seuls les tribunaux canadien sont compétents.

X

Trucsweb.com Trucsweb

X

Trucsweb.com Glossaire

X

Trucsweb.com Trucsweb

X

Trucsweb.com Trucsweb

Conditions

Aucun message!

Merci.

X
Aucun message!
X

Trucsweb.com Créer un compte

Créer un compte

.
@