当前位置: 首页 > 图文教程 > 网络编程 > ASP > 利用ASP制作EXECL报表方法(一)

ASP
开辟一条自由ASP快车道
用XML结合数据库,给服务器减负。
纯编码实现数据库的建立或压缩
多个表单和多个图片一起上传完美解决方案
列表项可上下移动的Multiple列表
模拟QQ的下拉列表选择图象
利用FSO取得BMP,JPG,PNG,GIF文件信息(大小,宽、高等)
二级域名原理以及程序,申请即可开通.
利用ASP+XML架设在线考试系统
ASP项目中的通用条件查询模块
一个为字符串中的网址加上链接的程序例子
用Agent+ASP技术制作语音聊天室
多表单域无组件文件上传的例子
使用xmlhttp为网站增加股市行情查询功能
用ASP开发WEB日期选择器
javascript+HTML仿造VB里的MonthView控件
使用xmlHttp结合ASP,实现网页的异步调用
调用DirectX的组件实现的时钟
在ASP页里面注册DLL的VBScript CLASS
ASP程序界面的多语言支持

利用ASP制作EXECL报表方法(一)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 196 ::
收藏到网摘: n/a

  很多时候我们需要把表格形式的数据转换成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>
    <% Next %>
    <TD><B>On Hand (calculated)</B></TD>
    <TD><B>Gross (calculated)</B></TD>
    </TR>
    <%
   ' %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   ' % Loop through rows, displaying each field
   ' %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    Do While Not RS.EOF
    %>
    <TR>
   &n