阿余常要把各种各样的查询结果输出到Excel中,所以做了下面这段小程序,用于把一个SQL的SELECT查询出的结果输出为Excel格式文件,这个程序你只要设好用于取得一个记录集的SQL的SELECT查询语句和一个文件名,程序就能输出Excel格式文件了,这个程序一共由三个文件构成,第一个文件的文件名为:toExcel.ASP是主文件,内容如下:
<%
'前面是和来链接到数据库,请自行书写相关语句,此处略过
sql=session("toExcelsql") '这里是要输出Excel的查询语句,如 "SESECT * FORM CAI WHERE 性别='女'"
filename="Excel.xls" ' 要输出的Excel文件的文件名, 你只要改以上两句就行了,其它的都不要改.
'你只要修改以上两变量就行了.其它的我都做好了.
call toExcel(FILENAME,sql)
set conn=nothing
function ReadText(FileName) '这是一个用于读出文件的函数
set adf=server.CreateObject("Adodb.Stream")
with adf
.Type=2
.LineSeparator=10
.Open
.LoadFromFile (server.MapPath(FileName))
.Charset="GB2312"
.Position=2
ReadText=.ReadText
.Cancel()
.Close()
end with
set ads=nothing
end function
sub SaveText(FileName,Data) '这是一个用于写文件的函数
set fs= createobject("scripting.filesystemobject")
set ts=fs.createtextfile(server.MapPath(FileName),true)
ts.writeline(data)
ts.close
set ts=nothing
set fs=nothing
end sub
sub toExcel(filename,sql) '这是一个根据SQL语句和FILENAME生成Excel文件
Set rs=Server.CreateObject("ADODB.RecordSet")
rs.Open sql,conn,1,3
TOExcelLR="
| "&MYFIELD(I).NAME&" | "||
"&formatdatetime(rs(fieldname(i)),2)&" | "
| "
"&rs(fieldname(i))&" | "
tou=readtext("tou.txt")
di=readtext("di.txt")
toExcellr=tou&toExcellr&di
call savetext(filename,toExcellr)
end sub
%>
正在生成EXLCE文件....
**************第二个文件名为:di.txt 内容如下:
************第三个文件的文件名为:tou.TXT 内容如下:
XMLns:x="urn:schemas-microsoft-com:office:Excel"
XMLns="http://www.w3.org/TR/REC-HTML40">

