注册 登录
编程论坛 ASP技术论坛

asp导出xls后怎么保存在本地

sky222 发布于 2010-06-12 12:38, 1210 次点击
程序代码:
<%
set rs=server.createobject("adodb.recordset")
sql
="select * from SK_Client where SK_Del=0"
rs.open sql,conn,
1,3

Set fs = server.CreateObject("scripting.filesystemobject")
'--假设你想让生成的EXCEL文件做如下的存放
filename="log.xls"
temp
=filename
filename
=Request.ServerVariables("APPL_PHYSICAL_PATH")&"\"+filename
filename
=server.MapPath("excel/"&filename)

'--如果原来的EXCEL文件存在的话删除它
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=CL0029&chr(9)&CL0003&chr(9)&CL0010&chr(9)&CL0006&chr(9)&CL0005&chr(9)&CL0009&chr(9)&CL0008&chr(9)&CL0012&chr(9)&CL0013&chr(9)
'Next
'
--将表的列名先写入EXCEL
myfile.writeline strLine
while not rs.eof
strLine
=""
Fettle
=""
if RS("SK_Fettle")=0 then
Fettle
=CL0126
elseif RS("SK_Fettle")=1 then
Fettle
=CL0127
elseif RS("SK_Fettle")=2 then
Fettle
=CL0128
end if
'for each x in rs.Fields
strLine=RS("SK_No")&chr(9)&left(RS("SK_Jname"),8)&chr(9)&RS("SK_Scale")&chr(9)&Fettle&chr(9)&RS("SK_Exchang")&chr(9)&RS("SK_Product")&chr(9)&Rs("SK_Property")&chr(9)&RS("SK_Area2")&chr(9)&RS("SK_Area3")& chr(9)
'next
'
--将表的数据写入EXCEL
myfile.writeline strLine
rs.movenext
wend
response.Write(导出完成)
%>


最后想运行这个asp的时候直接跳出保存的按钮,保存到自己指定的位置。忘了加个什么代码了。

忘版主帮个忙
6 回复
#2
yms1232010-06-12 14:01
response.Write(导出完成)
这句话不用写,直接把网页输出为excel格式,浏览器应该会自动弹出文件保存对话框的。
#3
sky2222010-06-12 14:37
啊应该怎么写呢
#4
sky2222010-06-12 14:51
<%Response.ContentType = "application/vnd.ms-excel"%>
<!--#include file="../log.xls" -->

添加这段以后,浏览器出错,保存时可以了。
#5
yms1232010-06-12 15:02
<%Response.ContentType = "application/vnd.ms-excel"%>
<!--#include file="../log.xls" -->
肯定出错,你已经把网页输出类型设置为excel文档,excel文档不支持include
#6
sky2222010-06-12 15:13
那么保存后,可以自动关闭浏览器或者怎么样才不出错。
#7
yms1232010-06-12 16:19
不知道你include做什么?,如果要把那个xls文件导入到当前excel文档的话可以用asp读取那个文件,将文件内容追加到输出的xls文件中。
如果不是把include删除即可。
1