现在的位置: 首页 > 综合 > 正文

Asp导出Excle

2012年10月08日 ⁄ 综合 ⁄ 共 1346字 ⁄ 字号 评论关闭

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>

抱歉!评论已关闭.