使用FSO创建Excel

<%
Dim conn,sqlstr,rs
On error resume next
Set conn=server.createobject("ADODB.connection")
connstr = "provider=microsoft.jet.oledb.4.0;data source=" & server.mappath("mzwucom.mdb")
conn.open connstr
If err then
    Response.write "数据库连接出错!"
    err.clear
    Response.end()
End if
On error goto 0
sqlstr = "select * from table1"
Set rs = Server.CreateObject("ADODB.RecordSet")
rs.open sqlstr,conn,1,2

Dim filename,fs,myfile,x,link  
Set fs = server.CreateObject("scripting.filesystemobject")
filename = Server.MapPath("mzwucom.xls" )
Set myfile = fs.CreateTextFile(filename,true) '存在则覆盖
If not(rs.eof and rs.bof) then
   Dim strLine
   strLine=""
   For each x in rs.fields
           strLine= strLine & x.name & chr(9)
   Next  
   '--将表的列名先写入EXCEL
   myfile.writeline strLine  
   Do while Not rs.EOF
           strLine=""  
           for each x in rs.Fields
               strLine= strLine & x.value & chr(9)
           next
   '--将表的数据写入EXCEL
   myfile.writeline strLine  
   rs.MoveNext
   Loop  
End if
Set myfile = nothing
Set fs=Nothing
rs.close
Set rs = nothing
conn.close
Set conn = nothing

link="<A HREF=" & filename & ">Open The Excel File</a>"
Response.write link
%>

注:使用本方法无法对Excel单元格的格式进行控制,因而诸如身份证号码之类的数值型字符串会被认为是数值,并采用科学计数法显示!此问题目前尚未解决。

上一篇: 在ASP中使用断开的记录集
下一篇: 芋饺大观
文章来自: web人技术交流网
引用通告: 查看所有引用 | 我要引用此文章
Tags:
最新日志:
评论: 1 | 引用: 0 | 查看次数: 4885
发表评论
登录后再发表评论!