使用 ASP 创建格式化的 MS-Excel 表格






4.29/5 (16投票s)
2002年10月11日

194276

1945
一篇关于如何使用 ASP 创建格式化 MS-Excel 表格的文章
引言
通常,所有数据驱动的网站都需要在他们的网页上以表格形式显示报告。数据可能是静态的或动态的。静态数据可以使用 <table>
、<tr>
、<td>
以表格形式显示,每个网页开发者都知道这一点,即使动态数据也可以使用他们自己的业务逻辑与 HTML 内容混合以表格形式显示。
有时,网站管理员/管理员需要将报告保存为文本/doc/Excel 文件的软拷贝。一种方法是从浏览器中选择并复制整个表格,然后将其粘贴到文件中。 这样可以保存内容,但所有格式都会丢失。
动态创建和保存 Excel 文件
这里有一种动态创建 Excel 文件的方法。我使用表格中的静态内容来创建 Excel,但您可以编写自己的业务逻辑来创建动态表格和动态 Excel 表格。生成的 Excel 文件具有与浏览器上显示的 HTML 表格相同的格式。
<%
' Tells the browser to use Excel to open the file
Response.ContentType = "application/vnd.ms-excel"
' Your data can come from ANYWHERE! Since that's not the
' point of this sample, I'm just hand writing a table
' below, but it could easily be generated from a database
' as illustrated in some of our other samples.
' Everything that follows is plain HTML... what you see
' in Excel is based on Excel's interpretation of it.
' It picks up the formulas and emulates the formatting
' pretty well...
%>
MS Excel 文档。
<TABLE borderColor=#808080 border=1>
<THEAD>
<TR>
<TH BGCOLOR="BLUE"><B><FONT color=white
face=Arial size=2>Against</FONT></B></TD>
<TH BGCOLOR="BLUE"><B><FONT color=white
face=Arial size=2>Match</FONT></B></TD>
<TH BGCOLOR="BLUE"><B><FONT color=white
face=Arial size=2>Won</FONT></B></TD>
<TH BGCOLOR="BLUE"><B><FONT color=white
face=Arial size=2>Lost</FONT></B></TD>
<TH BGCOLOR="BLUE"><B><FONT color=white
face=Arial size=2>Tied</FONT></B></TD>
<TH BGCOLOR="BLUE"><B><FONT color=white
face=Arial size=2>No Result</FONT></B></TD>
</TR>
</THEAD>
<TBODY>
<TR>
<TD><B><FONT face=Arial color=#000080
size=2>Australia</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>67</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>25</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>39</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>0</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>3</FONT></B></TD>
</TR>
<TR>
<TD><B><FONT face=Arial color=#000080
size=2>Bangladesh</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>8</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>8</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>0</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>0</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>0</FONT></B></TD>
</TR>
<TR>
<TD><B><FONT face=Arial color=#000080
size=2>East Africa</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>1</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>1</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>0</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>0</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>0</FONT></B></TD>
</TR>
<TR>
<TD><B><FONT face=Arial color=#000080
size=2>England</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>46</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>21</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>23</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>0</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>2</FONT></B></TD>
</TR>
<TR>
<TD><B><FONT face=Arial color=#000080
size=2>Kenya</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>10</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>8</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>2</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>0</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>0</FONT></B></TD>
</TR>
<TR>
<TD><B><FONT face=Arial color=#000080
size=2>New Zealand</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>61</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>31</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>27</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>0</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>3</FONT></B></TD>
</TR>
<TR>
<TD><B><FONT face=Arial color=#000080
size=2>Pakistan</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>85</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>29</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>52</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>0</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>4</FONT></B></TD>
</TR>
<TR>
<TD><B><FONT face=Arial color=#000080
size=2>South Africa</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>42</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>14</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>27</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>0</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>1</FONT></B></TD>
</TR>
<TR>
<TD><B><FONT face=Arial color=#000080
size=2>Sri Lanka</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>73</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>39</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>29</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>0</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>5</FONT></B></TD>
</TR>
<TR>
<TD><B><FONT face=Arial color=#000080
size=2>U.A.E.</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>1</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>1</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>0</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>0</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>0</FONT></B></TD>
</TR>
<TR>
<TD><B><FONT face=Arial color=#000080
size=2>West Indies</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>69</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>25</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>42</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>1</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>1</FONT></B></TD>
</TR>
<TR>
<TD><B><FONT face=Arial color=#000080
size=2>Zimbabwe</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>42</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>32</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>8</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>2</FONT></B></TD>
<TD><B><FONT face=Arial color=#800000
size=2>0</FONT></B></TD>
</TR>
<TR>
<TD><B><FONT face=Arial color=#000000
size=2>Total</FONT></B></TD>
<TD><B><FONT face=Arial color=#000000
size=2>=SUM(B2:B13)</FONT></B></TD>
<TD><B><FONT face=Arial color=#000000
size=2>=SUM(C2:C13)</FONT></B></TD>
<TD><B><FONT face=Arial color=#000000
size=2>=SUM(D2:D13)</FONT></B></TD>
<TD><B><FONT face=Arial color=#000000
size=2>=SUM(E2:E13)</FONT></B></TD>
<TD><B><FONT face=Arial color=#000000
size=2>=SUM(F2:F13)</FONT></B></TD>
</TR>
</TBODY>
</TABLE>
很酷,不是吗?