📄 利用asp制作execl报表方法(一) .htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0055)http://www.51base.com/article/view_article.asp?id=49565 -->
<HTML lang=zh-cn><HEAD><TITLE>NB联盟</TITLE>
<META content="text/html; charset=gb2312" http-equiv=Content-Type><LINK
href="NB联盟14.files/style.css" rel=stylesheet>
<META content="MSHTML 5.00.2614.3500" name=GENERATOR></HEAD>
<BODY><!-- start page body -->
<TABLE align=center border=0 cellPadding=0 cellSpacing=0 class=td id=position
width=773>
<TBODY>
<TR>
<TD class=shadow colSpan=2 height=20 width=262> <A
href="http://www.51base.com/"><IMG border=0
src="NB联盟14.files/logo1.gif"></A> </TD>
<TD align=right width=505>
<P align=left></P></TD></TR></TBODY></TABLE>
<TABLE align=center border=0 cellPadding=0 cellSpacing=0 id=main width=770>
<TBODY>
<TR>
<TD class=tdlbr vAlign=top>
<TABLE align=center border=0 cellPadding=0 cellSpacing=0 id=welcome
style="TABLE-LAYOUT: fixed" width="98%">
<TBODY>
<TR>
<TD style="TABLE-LAYOUT: fixed; WORD-BREAK: break-all"
vAlign=top><FONT color=red><B>文章标题</B></FONT><FONT color=red><B>:
利用ASP制作EXECL报表方法(一) </B></FONT>
<HR noShade SIZE=1>
<BR>很多时候我们需要把表格形式的数据转换成EXECL的形式呈现在用户面前,其中有好几个方法可以做到一点,我将介绍一种利用ASP完成的方法,该方法允许服务器动态地创建EXECL报表而且不用占用任何服务器空间。该方法还允许多个用户同时收到该数据。但是该方法至少需要EXECL
97的支持。<BR>废话少说,要完成这个工作最重要的是要告诉浏览器HTTP头,就用如下代码:
<P></P>
<P><% <BR>Response.ContentType =
"application/vnd.ms-excel"<BR>%></P>
<P>下面来看一个例子,假设现在有如下形式的数据:<BR>flavor qty_baked qty_eaten qty_sold
price<BR>Boston 24 2 10 0.5<BR>Jelly 24 1 12 0.5<BR>Strawberry 36 1
15 0.5<BR>Chocolate 24 2 6 0.75<BR>Maple 12 1 6 0.75</P>
<P>客户要求用EXECL的形式表现出来,并且希望其中能加上其他一些计算汇总</P>
<P>用如下代码:<BR>……<BR><% <BR>Response.ContentType =
"application/vnd.ms-excel"</P>
<P>set
conntemp=server.createobject("adodb.connection")<BR>cnpath="DBQ="
&
server.mappath("/stevesmith/data/timesheet.mdb")<BR>conntemp.Open
"DRIVER={Microsoft Access Driver (*.mdb)}; " & cnpath<BR>set
RS=conntemp.execute("select * from donut")<BR>%><BR><TABLE
BORDER=1><BR><TR><BR><% <BR>'
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<BR>' % Loop through Fields Names
and print out the Field Names<BR>'
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<BR>j = 2 'row counter<BR>For i = 0
to RS.Fields.Count - 1 <BR>%><BR><TD><B><% =
RS(i).Name %></B></TD><BR><% Next
%><BR><TD><B>On Hand
(calculated)</B></TD><BR><TD><B>Gross
(calculated)</B></TD><BR></TR><BR><% <BR>'
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<BR>' % Loop through rows,
displaying each field<BR>' %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<BR>Do
While Not RS.EOF <BR>%><BR><TR><BR><% For i = 0 to
RS.Fields.Count - 1<BR>%><BR><TD VALIGN=TOP><% = RS(i)
%></TD><BR><% Next
%><BR><TD>=b<%=j%>-c<%=j%>-d<%=j%></TD><BR><TD>=d<%=j%>*e<%=j%></TD><BR></TR><BR><%<BR>RS.MoveNext<BR>j
= j + 1<BR>Loop<BR>' %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<BR>' % Make
sure to close the Result Set and the Connection object<BR>'
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<BR>RS.Close<BR>%><BR><TR
BGCOLOR=RED><BR><TD>Totals</TD><BR><TD>=SUM(B2:B6)</TD><BR><TD>=SUM(C2:C6)</TD><BR><TD>=SUM(D2:D6)</TD><BR><TD>n/a</TD><BR><TD>=SUM(F2:F6)</TD><BR><TD>=SUM(G2:G6)</TD><BR></TABLE><BR>……<BR>这样我们就实现了目的,用户可以在浏览器窗口就打开它进行简单操作,也可以保存到硬盘上进行其他操作。我还将介绍一种利用filesystemobject操作的方法。请稍候。:)<BR><BR></P></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE><BR>
<TABLE align=center border=0 cellPadding=2 cellSpacing=0 id=footer width=770>
<TBODY>
<TR>
<TD align=middle class=tdt>
<P align=center></P></TD></TR></TBODY></TABLE><BR></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -