webForumDet fria alternativet
Logga in / Bli medlem

SQL tabell till Excel tabell via ASP-sida

ASP

5 svar · 202 visningar · startad av Addeladde

Medlem sedan jan. 20013 406 inlägg
Trådstart#1

Hej

Hur gör man om man vill lägga över en MS SQL tabells rader i en excelfil och sedan få upp ett fönster om att ladda ner filen.

Medlem sedan mars 2001309 inlägg
#2
<%Response.ContentType = "application/vnd.ms-excel" %>

Säger åt browsern att öppnaexcel

sen kan du bara loopa ut dina resultat ur ett recordset !

Medlem sedan jan. 20013 406 inlägg
#3

Har prövat det men det funkar inte.

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

Set con = Server.CreateObject("ADODB.Connection")
con.Open Application("tdcon")
%> 

<table border="0" size="400" cellpadding="3" cellspacing=0 bgcolor="#FFFFFF">
<%

sqlString = "SELECT user_namn, user_efternamn, user_id FROM users " &_
  " ORDER BY user_efternamn"
SET RS = Con.Execute( sqlString )
WHILE NOT RS.EOF

%>
 
  <tr>
    <td><a class="lank" href="edit_kund.asp?pid=<%=RS( "user_id")%>"><%=server.HTMLEncode(RS( "user_namn" ))%>&nbsp;<%=server.HTMLEncode(RS( "user_efternamn" ))%></a></td>
  </tr>
  <%
RS.MoveNext
WEND
RS.Close
set RS = nothing
Con.Close
set con = nothing

%>
</table>
Medlem sedan mars 2001309 inlägg
#4

Det här skrev jag en gång i tiden och det funkar utmärkt...

<!-- #include file="./gaaah.inc" -->
<%
SQL="select fornamn,efternamn,enhetkort,tfnkontor,tfnmobil,epost,namn,telefonkund,hemtelefon,eposthem,fax from Vytelexcel "
SQL=SQL & session("StrSQLvilkor")

Dim Conn, rs,rs_rubrik
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open connString
Set rs=Conn.execute(SQL)
'********************Kollar om det är något i recordsetet*****************
dim antal
antal=0
do while not rs.eof
antal=antal+1
rs.movenext
loop%>
<%if antal>0 then
'**********************Säger åt browsern att öppnaexcel******************
Response.ContentType = "application/vnd.ms-excel" %>
<%rs.movefirst%>
<html>
<head><link rel="stylesheet" href="Tele.css" type="text/css"></head>
<body bgcolor="white" class="orgtext" >
<table BORDER="1" align="center">
       <tr>
           <td>Förnamn</td>
           <td>Efternamn</td>
           <td>Enhet</td>
           <td>TelefonKontor</td>
           <td>TelefonMobil</td>
           <td>Fax</td>
           <td>Epost</td>
           <td>Region/Affärsområde</td>
           <td>TelefonKund</td>
           <td>Telefonhem</td>
           <td>EpostHem</td>

        </tr>
<%Do while not rs.eof%>
         <tr>
            <td><%=rs("fornamn")%></td>
            <td><%=rs("efternamn")%></td>
            <td><%=rs("Enhetkort")%></td>
            <td><%=rs("tfnkontor")%></td>
            <td><%=rs("tfnmobil")%></td>
            <td><%=rs("fax")%></td>
            <td><%=rs("epost")%></td>
            <td><%=rs("namn")%></td>
            <td><%=rs("telefonkund")%></td>
            <td><%=rs("hemtelefon")%></td>
            <td><%=rs("eposthem")%></td>
       </tr>
<%rs.movenext
 loop%>
</table>
</body>
</html>

<%
rs.close
set rs=nothing
else%>
<center><h4>Din filtrering gav inga träffar och går<br>därför inte att öppna eller spara som excelfil</h4></center>
<%end if%>
Medlem sedan jan. 20013 406 inlägg
#5

Gjorde lite förändringar i koden men det fungerar fortfarande inte. Det radas bara upp i en tabell på en helt vanlig html sida. Excel ska väl öppnas eller hur går det till

<%
Set con = Server.CreateObject("ADODB.Connection")
con.Open Application("tdcon")

sqlString = "SELECT user_namn, user_efternamn, user_id FROM users " &_
  " ORDER BY user_efternamn"
SET RS = Con.Execute( sqlString )

Response.ContentType = "application/vnd.ms-excel"

%>
<html>
<body>
<table BORDER="1" align="center">
  <tr>
    <td>Förnamnamn</td>
    <td>Efternamn</td>
  </tr>
<%
WHILE NOT RS.EOF
%>
  <tr>
    <td><%=server.HTMLEncode(RS( "user_namn" ))%></td>
	<td><%=server.HTMLEncode(RS( "user_efternamn" ))%></td>
  </tr>
  <%
RS.MoveNext
WEND
RS.Close
set RS = nothing
Con.Close
set con = nothing
%>
</table>
</body>
</html>
Medlem sedan jan. 20013 406 inlägg
#6

Laddade upp filen på servern och då fungerade det. Men det fungerade inte lokalt på IIS 5. Måste man ha någon komponent installerad eller satt någon speciell rättighet på mappen

260 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
120 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)