ASP将access导出excel文件的方法
前段时间帮一个政府单位写一个上访事件登记跟踪系统,要将查询到不同阶段的事件记录生成excel(每次生成几万条)。方便不同单位部门跟踪查访处理事件,以便提高检察局高效的检察工作,节省大量时间。在制作中设计到asp将access导出excel文件方法和asp将access导出word文件,下一篇我将讲到asp将access导出word文件的方法,今天先说说导出excel文件的方法。
下面是经过调整后的全部导出excel文件的全部代码,供大家参考,如有疑问可以通过网上留言大家共同讨论。
数据库中表BSEventsManagement中字段包括:
序号 | 接收时间 | 登记时间 | 姓名 | 联系方式 | 被反映人 姓名 |
Id | EventsTime | AcceptTime | VisitName | VisitContact | BVName |
<%
'设置页面时间
Server.ScriptTimeOut=999999
dim s,sql,filename,fs,myfile,x
Set fs = server.CreateObject("scripting.filesystemobject")
filename = Server.MapPath("BlueStyleEvents.xls")
'--如果原来的EXCEL文件存在的话删除它
if fs.FileExists(filename) then
fs.DeleteFile(filename)
end if
'--创建EXCEL文件
set myfile = fs.CreateTextFile(filename,true)
'--从数据库中把你想放到EXCEL中的数据查出来,Wsql为接收查询条件
strSql = "select * from BSEventsManagement "&Wsql&" order by id asc"
'--显示执行的SQL语句
Response.Write "
"&strSql&"
Set Rs =conn.execute(strSql)
if not Rs.EOF and not Rs.BOF then
dim trLine,responsestr
strLine=""
For each x in Rs.fields
strLine = "序号" & chr(9) & "接收时间" & chr(9) & "登记时间" & chr(9) & "姓名" & chr(9) & "联系方式" & chr(9) & "被反映人姓名"
Next
'--将表的列名先写入EXCEL
myfile.writeline strLine
Response.Write "
Do while Not Rs.EOF
strLine=""
strLine= Rs("Id")&chr(9)& Rs("EventsTime")&chr(9) & Rs("AcceptTime")&chr(9) & Rs("VisitName") & chr(9) & Rs("VisitContact") & chr(9) & Rs("BVName")
if WriteDB=True then
Response.Write strLine & "
"
end if
myfile.writeline strLine
Rs.MoveNext
loop
Response.Write "
end if
Response.Write ""
Rs.Close :set Rs = nothing
Conn.Close:Set Conn = nothing
%>
当然有什么不明白和不好或者有更好的方法欢迎大家相互交流,可以通过本站留言或者邮箱alike@www.js-huaxin.com互相讨论。