asp生成excel的有关问题

asp生成excel的问题
诸位,我从sql-server2005里读取数据,然后用owc11创建并写入excel2003,其中有些记录里字段为日期 如2011-3-29 凡是包含这样的数据 写不到excel里,并产生错误,还有如果一次性插入2000条记录,server会超时,时间很长,大家好的解决办法吗?

------解决方案--------------------
用CSV非常方便

set fs = CreateObject("scripting.FileSystemObject") 
set exc = fs.OpenTextFile(server.MapPath("excel/"&ExcelName&".csv"),2,True) 
exc.write(excelstring) 
sql="insert into taoda_excel(path,file_name,add_time)values('excel/"&ExcelName&".csv','"&ExcelName&".csv',getdate())"
conn.execute(sql)
if fs.FileExists(Server.MapPath("excel/"&ExcelName&".csv")) then 
Response.Write("<a href=excel1.asp>报表已经生成,点击查看</a><br />") 
else
Response.Write("生成报表失败!") 
end if