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

ASP
BytesToBstr获取的源码转换为中文的代码
PostHttpPage用asp是实现模拟登录效果的代码
asp下实现UrlEncoding转换编码的代码
GetBody asp实现截取字符串的代码
asp之GetArray提取链接地址,以$Array$分隔的代码
DefiniteUrl asp将相对地址转换为绝对地址的代码
ReplaceSaveRemoteFile 替换、保存远程图片 的代码
ReSaveRemoteFile函数之asp实现查找文件保存替换的代码
FormatRemoteUrl函数之asp实现格式化成当前网站完整的URL-将相对地址转换为绝对地址的代码
ReplaceTrim 函数之asp实现过滤掉字符中所有的tab和回车和换行的代码
CheckFile函数之asp实现检查某一文件是否存在的代码
SaveRemoteFile函数之asp实现保存远程的文件到本地的代码
FpHtmlEnCode 函数之标题过滤特殊符号的代码
GetPaing 函数之asp采集函数中用到的获取分页的代码
ScriptHtml 函数之过滤html标记的asp代码
asp实现检查目录是否存在与建立目录的函数
ShowPage 显示“上一页 下一页”等信息的封装代码
JoinChar 向地址中加入 ? 或 & 用于实现传参
CreateKeyWord asp实现的由给定的字符串生成关键字的代码
Server.Execute方法执行指定的ASP程序

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 111 ::
收藏到网摘: 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