繁体中文
设为首页
加入收藏
当前位置:ASP技术首页 >> ASP基础 >> 输出EXCEL文件的通用函数,很实用

输出EXCEL文件的通用函数,很实用

2006-06-15 08:00:00  作者:  来源:互联网  浏览次数:0  文字大小:【】【】【
简介:阿余常要把各种各样的查询结果输出到Excel中,所以做了下面这段小程序,用于把一个SQL的SELECT查询出的结果输出为Excel格式文件,这个程序你只要设好用于取得一个记录集的SQL的SELECT查询语句和一个文件名,程序...

阿余常要把各种各样的查询结果输出到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=""

set myfield=rs.fields

dim fieldname(50)

for i=0 to myfield.count-1

toExcellr=toExcellr&"

"

fieldname(i)=myfield(i).name

if myfield(i).type=135 then datename=datename&myfield(i).name&","

next

toExcellr=toExcellr&"

"

do while not rs.eof

toExcellr=toExcellr&"

"

for i=0 to myfield.count-1

if instr(datename,fieldname(i)&",")<>0 then

if not isnull(rs(fieldname(i))) then

TOExcelLR=TOExcelLR&"

"

else

TOExcelLR=TOExcelLR&"

"

end if

else

TOExcelLR=TOExcelLR&"

"

end if

next

toExcellr=toExcellr&"

"

rs.movenext

loop

toExcellr=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文件

正在生成EXLCE文件....

**************第二个文件名为:di.txt 内容如下:

************第三个文件的文件名为:tou.TXT 内容如下:

XMLns:x="urn:schemas-microsoft-com:office:Excel"

XMLns="http://www.w3.org/TR/REC-HTML40">

责任编辑:admin
相关文章