downfile.asp
<BODY>
<%
set rs=server.createobject("adodb.recordset")
sql="exec GetTbl"
sql1="exec GetTbl1"
rs.open sql,ConnectionString,1,1
'rs1.open sql1,ConnectionString,1,1
Set fs = server.CreateObject("scripting.filesystemobject")
'--假設你想讓產生的EXCEL檔案做如下的存放
'--outtemp 要有everyone許可權
filename="outtemp\Table" & DatePart("yyyy",now) & DatePart("m",now) & DatePart("d",now) & DatePart("h",now) & DatePart("n",now) & DatePart("s",now) & ".xls"
fn=filename
'--如果原來的EXCEL檔案存在的話刪除它
filename=LEFT(Server.MapPath(Request.ServerVariables("PATH_INFO")),InstrRev(Server.MapPath(Request.ServerVariables("PATH_INFO")),"\")) & filename
if fs.FileExists(filename) then
fs.DeleteFile(filename)
end if
'--建立EXCEL檔案
set myfile = fs.CreateTextFile(filename,true)
dim strLine,responsestr
strLine=""
For each x in rs.fields
strLine= strLine & x.name & chr(9)
Next
'--將表的列名先寫入EXCEL
myfile.writeline strLine
while not rs.eof
strLine=""
for each x in rs.Fields
strLine= strLine & x.value & chr(9)
next
'--將表的資料寫入EXCEL
myfile.writeline strLine
rs.movenext
wend
rs.close
'--寫第二個表的資料
rs.open sql1,ConnectionString,1,1
strLine=""
For each x in rs.fields
strLine= strLine & x.name & chr(9)
Next
'--將表的列名先寫入EXCEL
myfile.writeline strLine
while not rs.eof
strLine=""
for each x in rs.Fields
strLine= strLine & x.value & chr(9)
next
'--將表的資料寫入EXCEL
myfile.writeline strLine
rs.movenext
wend
'Response.write "<a href="""&fn&""">匯出excel檔案</a>"
Response.Redirect(fn)
set myfile = nothing
Set fs=Nothing
rs.close
%>
</BODY>