利用ASP制作EXECL报表方法(一)
程序员文章站
2022-03-25 07:58:42
很多时候我们需要把表格形式的数据转换成EXECL的形式呈现在用户面前,其中有好几个方法可以做到一点,我将介绍一种利用ASP完成的方法,该方法允许服务器动态地创建EXECL报表而且不...
很多时候我们需要把表格形式的数据转换成EXECL的形式呈现在用户面前,其中有好几个方法可以做到一点,我将介绍一种利用ASP完成的方法,该方法允许服务器动态地创建EXECL报表而且不用占用任何服务器空间。该方法还允许多个用户同时收到该数据。但是该方法至少需要EXECL 97的支持。
废话少说,要完成这个工作最重要的是要告诉浏览器HTTP头,就用如下代码:
<%
Response.ContentType = "application/vnd.ms-excel"
%>
下面来看一个例子,假设现在有如下形式的数据:
flavor qty_baked qty_eaten qty_sold price
Boston 24 2 10 0.5
Jelly 24 1 12 0.5
Strawberry 36 1 15 0.5
Chocolate 24 2 6 0.75
Maple 12 1 6 0.75
客户要求用EXECL的形式表现出来,并且希望其中能加上其他一些计算汇总
用如下代码:
……
<%
Response.ContentType = "application/vnd.ms-excel"
set conntemp=server.createobject("adodb.connection")
cnpath="DBQ=" & server.mappath("/stevesmith/data/timesheet.mdb")
conntemp.Open "DRIVER={Microsoft access(小型网站之最爱) Driver (*.mdb)}; " & cnpath
set RS=conntemp.execute("select * from donut")
%>
<TABLE BORDER=1>
<TR>
<%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Loop through Fields Names and print out the Field Names
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
j = 2 row counter
For i = 0 to RS.Fields.Count - 1
%>
<TD><B><% = RS(i).Name %></B></TD>
废话少说,要完成这个工作最重要的是要告诉浏览器HTTP头,就用如下代码:
<%
Response.ContentType = "application/vnd.ms-excel"
%>
下面来看一个例子,假设现在有如下形式的数据:
flavor qty_baked qty_eaten qty_sold price
Boston 24 2 10 0.5
Jelly 24 1 12 0.5
Strawberry 36 1 15 0.5
Chocolate 24 2 6 0.75
Maple 12 1 6 0.75
客户要求用EXECL的形式表现出来,并且希望其中能加上其他一些计算汇总
用如下代码:
……
<%
Response.ContentType = "application/vnd.ms-excel"
set conntemp=server.createobject("adodb.connection")
cnpath="DBQ=" & server.mappath("/stevesmith/data/timesheet.mdb")
conntemp.Open "DRIVER={Microsoft access(小型网站之最爱) Driver (*.mdb)}; " & cnpath
set RS=conntemp.execute("select * from donut")
%>
<TABLE BORDER=1>
<TR>
<%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Loop through Fields Names and print out the Field Names
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
j = 2 row counter
For i = 0 to RS.Fields.Count - 1
%>
<TD><B><% = RS(i).Name %></B></TD>