ASP + Access 大数据生成 Excel 问题
---------------------------
数据一万条内生成没有问题,完全可以生成下载..但是要生成3万条以上(2万条我没试过),即出现:
Microsoft VBScript 运行时错误 错误 '800a0005'
无效的过程调用或参数
/Down_Excel.asp,行 75
myfile.writeline strLine 也就是这一行
------------------------------------------------------
---------------------------
数据一万条内生成没有问题,完全可以生成下载..但是要生成3万条以上(2万条我没试过),即出现:
Microsoft VBScript 运行时错误 错误 '800a0005'
无效的过程调用或参数
/Down_Excel.asp,行 75
myfile.writeline strLine 也就是这一行
------------------------------------------------------
<
!
--
#include file
=
"
../conn.asp
"
-->
< %
dim rs,sql,filename,fs,myfile,x
Set fs = server.CreateObject( " scripting.filesystemobject " )
' --假设你想让生成的EXCEL文件做如下的存放
filename = Server.MapPath( " download.xls " )
' Response.Write filename
' --如果原来的EXCEL文件存在的话删除它
if fs.FileExists(filename) then
fs.DeleteFile(filename)
end if
' --创建EXCEL文件
set myfile = fs.CreateTextFile(filename, true )
Set rs = Server.CreateObject( " ADODB.Recordset " )
' --从数据库中把你想放到EXCEL中的数据查出来
sql = " select soft,soft1,soft2,soft3 from softdwon "
rs.Open sql,conn, 1 , 1
if rs.EOF and rs.BOF then
else
dim strLine,responsestr
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
rs.Close
set rs = nothing
Response.ContentType = " application/x-msdownload "
Response.Redirect " download.xls "
% >
< %
dim rs,sql,filename,fs,myfile,x
Set fs = server.CreateObject( " scripting.filesystemobject " )
' --假设你想让生成的EXCEL文件做如下的存放
filename = Server.MapPath( " download.xls " )
' Response.Write filename
' --如果原来的EXCEL文件存在的话删除它
if fs.FileExists(filename) then
fs.DeleteFile(filename)
end if
' --创建EXCEL文件
set myfile = fs.CreateTextFile(filename, true )
Set rs = Server.CreateObject( " ADODB.Recordset " )
' --从数据库中把你想放到EXCEL中的数据查出来
sql = " select soft,soft1,soft2,soft3 from softdwon "
rs.Open sql,conn, 1 , 1
if rs.EOF and rs.BOF then
else
dim strLine,responsestr
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
rs.Close
set rs = nothing
Response.ContentType = " application/x-msdownload "
Response.Redirect " download.xls "
% >