L'important c'est la première ligne
après on génère un tableau standard html qui sera reconnu par excel:
--------------------------
<%response.ContentType="application/vnd.ms-excel"%>
<html>
<body>
<table>
<tr>
<td width="90" valign="top">--Date début--</td>
<td width="90" valign="top">--Heure-début-</td>
<td width="90" valign="top">---Date fin---</td>
<td width="90" valign="top">---Heure-fin--</td>
<td width="90" valign="top">---Date CJ----</td>
<td width="90" valign="top">---Structure-</td>
<td width="120" valign="top">-----Intervenant-----</td>
<td width="110" valign="top">----Orig. appel-----</td>
<td width="120" valign="top">----Environnement----</td>
<td width="140" valign="top">-------Application------</td>
<td width="150" valign="top">-------Job Pf Serveur-----</td>
<td width="150" valign="top">------------Région-----------</td>
<td width="200" valign="top">------------Caisses----------</td>
<td width="500" valign="top">--------------------------Evènement------------------------</td>
<td width="90" valign="top">---Pertinence---</td>
<td width="500" valign="top">-----------------------Justification-----------------------</td>
</tr>
<%
valdatd=request("date_deb")
valheud=request("HeureDeb")
valdatf=request("date_fin")
valheuf=request("HeureFin")
valstru=request("Structure")
valcri1=request("Critere1")
valcri2=request("Critere2")
valcri3=request("Critere3")
valcri4=request("Critere4")
%>
<!--#include virtual="/asp/Astreintes/CopyRequete.txt" -->
<tr>
<td width="90" valign="top"><%=rs("DateDebut")%></td>
<td width="90" valign="top"><%=rs("HeureDebut")%></td>
<td width="90" valign="top"><%=rs("DateFin")%></td>
<td width="90" valign="top"><%=rs("HeureFin")%></td>
<td width="90" valign="top"><%=rs("DateCJ")%></td>
<td width="90" valign="top"><%=rs("Structure")%></td>
<td width="120" valign="top"><%=rs("Intervenant")%></td>
<td width="110" valign="top"><%=rs("OrigineAppel")%></td>
<td width="120" valign="top"><%=rs("Environnement")%></td>
<td width="140" valign="top"><%=rs("Application")%></td>
<td width="150" valign="top"><%=rs("Element")%></td>
<td width="150" valign="top"><%=rs("Region")%></td>
<td width="200" valign="top"><%=rs("Caisse")%></td>
<td width="500" valign="top"><%=rs("Description")%></td>
<td width="90" valign="top"><%=rs("Pertinence")%></td>
<td width="500" valign="top"><%=rs("Justification")%></td>
</tr>
<%rs.movenext
loop
end if
rs.close
set rs=nothing
conn.close
set conn=nothing%>
</table>
</body>
</html>
==============
la requete est standard:
<%
'Crée un objet connexion.
Set conn = Server.CreateObject("ADODB.Connection")
'Ouvre une connexion à l'aide de la chaîne de connexion OLE DB.
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&NomDeLaBaseAstreinte
valstructure=request("Structure")
if valcri2 = "" then valcri2 = valcri1 end if
if valcri3 = "" then valcri3 = valcri1 end if
if valcri4 = "" then valcri4 = valcri1 end if
' recherche du nombre de rapports correspondant à la journée
' sur sql le format date est mm/jj/aaaa
if valdatd = "" then valdatd = "01/01/2004" end if
valAA=year(valdatd)
valMM=month(valdatd)
valJJ=day(valdatd)
if valheud = "" then valheud = "00:00" end if
valJourd=valMM&"/"&valJJ&"/"&valAA&" "&valheud
if valdatf = "" then valdatf = dateadd("d","+1",date()) end if
valAA=year(valdatf)
valMM=month(valdatf)
valJJ=day(valdatf)
if valheuf = "" then valheuf = "00:00" end if
valJourf=valMM&"/"&valJJ&"/"&valAA&" "&valheuf
if request("EtOu") = "OR" then
sql="select * from RapportsAstreinte where (DateDebut+heuredebut) between #"&valJourd&"# and #"&valJourf&"# and "
if len(request("Structure")) > 0 then
sql=sql&"Structure = '"&valstructure&"' and "
end if
sql=sql&"(Description like '%"&valcri1&"%' or Description like '%"&valcri2&"%' or Description like '%"&valcri3&"%' or Description like '%"&valcri4&"%' "
sql=sql&"or Structure like '%"&valcri1&"%' or Structure like '%"&valcri2&"%' or Structure like '%"&valcri3&"%' or Structure like '%"&valcri4&"%' "
sql=sql&"or Intervenant like '%"&valcri1&"%' or Intervenant like '%"&valcri2&"%' or Intervenant like '%"&valcri3&"%' or Intervenant like '%"&valcri4&"%' "
sql=sql&"or OrigineAppel like '%"&valcri1&"%' or OrigineAppel like '%"&valcri2&"%' or OrigineAppel like '%"&valcri3&"%' or OrigineAppel like '%"&valcri4&"%' "
sql=sql&"or Region like '%"&valcri1&"%' or Region like '%"&valcri2&"%' or Region like '%"&valcri3&"%' or Region like '%"&valcri4&"%' "
sql=sql&"or Caisse like '%"&valcri1&"%' or Caisse like '%"&valcri2&"%' or Caisse like '%"&valcri3&"%' or Caisse like '%"&valcri4&"%' "
sql=sql&"or Application like '%"&valcri1&"%' or Application like '%"&valcri2&"%' or Application like '%"&valcri3&"%' or Application like '%"&valcri4&"%' "
sql=sql&"or Element like '%"&valcri1&"%' or Element like '%"&valcri2&"%' or Element like '%"&valcri3&"%' or Element like '%"&valcri4&"%' "
sql=sql&"or Environnement like '%"&valcri1&"%' or Environnement like '%"&valcri2&"%' or Environnement like '%"&valcri3&"%' or Environnement like '%"&valcri4&"%' "
sql=sql&"or Justification like '%"&valcri1&"%' or Justification like '%"&valcri2&"%' or Justification like '%"&valcri3&"%' or Justification like '%"&valcri4&"%' ) order by DateDebut, HeureDebut"
'response.write(sql)
else
sql="select * from RapportsAstreinte where (DateDebut+heuredebut) between #"&valJourd&"# and #"&valJourf&"# and "
if len(request("Structure")) > 0 then
sql=sql&"Structure = '"&valstructure&"' and "
end if
sql=sql&"(Description like '%"&valcri1&"%' or Structure like '%"&valcri1&"%' or Intervenant like '%"&valcri1&"%' or OrigineAppel like '%"&valcri1&"%' "
sql=sql&"or Region like '%"&valcri1&"%' or Caisse like '%"&valcri1&"%' or Application like '%"&valcri1&"%' or Element like '%"&valcri1&"%' or Environnement like '%"&valcri1&"%' or Justification like '%"&valcri1&"%' ) "
sql=sql&"and (Description like '%"&valcri2&"%' or Structure like '%"&valcri2&"%' or Intervenant like '%"&valcri2&"%' or OrigineAppel like '%"&valcri2&"%' "
sql=sql&"or Region like '%"&valcri2&"%' or Caisse like '%"&valcri2&"%' or Application like '%"&valcri2&"%' or Element like '%"&valcri2&"%' or Environnement like '%"&valcri2&"%' or Justification like '%"&valcri2&"%' ) "
sql=sql&"and (Description like '%"&valcri3&"%' or Structure like '%"&valcri3&"%' or Intervenant like '%"&valcri3&"%' or OrigineAppel like '%"&valcri3&"%' "
sql=sql&"or Region like '%"&valcri3&"%' or Caisse like '%"&valcri3&"%' or Application like '%"&valcri3&"%' or Element like '%"&valcri3&"%' or Environnement like '%"&valcri3&"%' or Justification like '%"&valcri3&"%' ) "
sql=sql&"and (Description like '%"&valcri4&"%' or Structure like '%"&valcri4&"%' or Intervenant like '%"&valcri4&"%' or OrigineAppel like '%"&valcri4&"%' "
sql=sql&"or Region like '%"&valcri4&"%' or Caisse like '%"&valcri4&"%' or Application like '%"&valcri4&"%' or Element like '%"&valcri4&"%' or Environnement like '%"&valcri4&"%' or Justification like '%"&valcri4&"%' ) order by DateDebut, HeureDebut"
end if
set rs=conn.execute(sql)
if (not rs.BOF and not rs.EOF) then
rs.movefirst
do while not rs.EOF%>