|          
1、ASP文件:
 <%@ LANGUAGE="VBSCRIPT" %>
 <%option explicit%>
 <%
 'EXAMPLE AS:把数据库中一个每天24小时在线人数放到一个EXCEL文件中去
 'AUTHOR:钢铁工人
 'EMAIL :hello_hhb@21cn.com
 'DATE:2001-3-25
 'TEST:在NT4,SP6,SQL SERVER 7.0,EXCEL2000中测试通过
 %>
 <HTML>
 <HEAD>
 <meta content="text/html; charset=gb2312" http-equiv="Content-Type">
 <TITLE>生成EXCEL文件</TITLE>
 </HEAD>
 <body>
 <a href="dbtoexcel.asp?act=make">生成在线人口的EXCEL</a>
 <hr size=1 align=left width=300px>
 <%
 if Request("act") = "" then
 else
 
 dim conn
 set conn=server.CreateObject("adodb.connection")
 conn.Open "test","sa",""
 'conn.Open Application("connstr")
 
 dim rs,sql,filename,fs,myfile,x,link
 
 Set fs = server.CreateObject("scripting.filesystemobject")
 '--假设你想让生成的EXCEL文件做如下的存放
 filename = "c:\online.xls"
 '--如果原来的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 population,hourpos,datepos from populationperhour order by datepos,hourpos asc"
 rs.Open sql,conn
 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
 conn.close
 set conn = nothing
 set myfile = nothing
 Set fs=Nothing
 
 link="<A HREF=" & filename & ">Open The Excel File</a>"
 Response.write link
 end if
 %>
 </BODY>
 </HTML>
 
 
 2、数据库相关:
 
 CREATE TABLE [populationperhour] (
 [population] [int] NOT NULL ,
 [hourpos] [int] NOT NULL ,
 [datepos] [datetime] NOT NULL
 );
 insert into populationperhour values('936','1','2001-1-11');
 insert into populationperhour values('636','2','2001-1-11');
 insert into populationperhour values('106','3','2001-1-11');
 insert into populationperhour values('177','4','2001-1-11');
 insert into populationperhour values('140','5','2001-1-11');
 insert into populationperhour values('114','6','2001-1-11');
 insert into populationperhour values('94','7','2001-1-11');
 insert into populationperhour values('49','8','2001-1-11');
 insert into populationperhour values('88','9','2001-1-11');
 insert into populationperhour values('215','10','2001-1-11');
 insert into populationperhour values('370','11','2001-1-11');
 insert into populationperhour values('550','12','2001-1-11');
 insert into populationperhour values('629','13','2001-1-11');
 insert into populationperhour values('756','14','2001-1-11');
 insert into populationperhour values('833','15','2001-1-11');
 insert into populationperhour values('923','16','2001-1-11');
 insert into populationperhour values('980','17','2001-1-11');
 insert into populationperhour values('957','18','2001-1-11');
 insert into populationperhour values('812','19','2001-1-11');
 insert into populationperhour values('952','20','2001-1-11');
 insert into populationperhour values('1379','21','2001-1-11');
 insert into populationperhour values('1516','22','2001-1-11');
 insert into populationperhour values('1476','23','2001-1-11');
 insert into populationperhour values('1291','24','2001-1-11');
 insert into populationperhour values('1028','1','2001-1-12');
 insert into populationperhour values('687','2','2001-1-12');
 insert into populationperhour values('462','3','2001-1-12');
 insert into populationperhour values('317','4','2001-1-12');
 insert into populationperhour values('221','5','2001-1-12');
 insert into populationperhour values('158','6','2001-1-12');
 insert into populationperhour values('127','7','2001-1-12');
 insert into populationperhour values('81','8','2001-1-12');
 insert into populationperhour values('96','9','2001-1-12');
 insert into populationperhour values('192','10','2001-1-12');
 insert into populationperhour values('380','11','2001-1-12');
 insert into populationperhour values('629','12','2001-1-12');
 insert into populationperhour values('745','13','2001-1-12');
 insert into populationperhour values('964','14','2001-1-12');
 insert into populationperhour values('1012','15','2001-1-12');
 insert into populationperhour values('1050','16','2001-1-12');
 insert into populationperhour values('1135','17','2001-1-12');
 insert into populationperhour values('1130','18','2001-1-12');
 insert into populationperhour values('894','19','2001-1-12');
 insert into populationperhour values('1026','20','2001-1-12');
 insert into populationperhour values('1430','21','2001-1-12');
 insert into populationperhour values('1777','22','2001-1-12');
 insert into populationperhour values('1759','23','2001-1-12');
 insert into populationperhour values('1697','24','2001-1-12');
 |