利用ASP将HTML格式数据传输给Excel 的技能
核心提示:利用ASP将HTML格式数据传输给Excel 的技能学习如何建立ASP页面将HTML数据流传送到Execl电子表格,并且在IE中显示Execl电子表格。 到目前为止,有好几种方法可使用ASP技术来创建Excel数据表格,你还可以利用服务器端Excel 8.0 VBA组件建立电子数据表。但是,某些情
学习如何建立ASP页面将HTML数据流传送到Execl电子表格,并且在IE中显示Execl电子表格。
到目前为止,有好几种方法可使用ASP技术来创建Excel数据表格,你还可以利用服务器端Excel 8.0 VBA组件建立电子数据表。但是,某些情况下服务器可能没法处理所触及到的信息量或没法承当所构成的工作负载,因此你不能不牺牲某些为客户机提供的处理性能。本文将主要讨论有关客户真个数据表格处理题目。Excel 97具有某些特别的性能可以象处理电子表格1样处理HTML格式数据流,这1特别的处理能力仅在Excel 97或更高版本中才具有,而且用户需要建立类似Excel电子表格数据流才能更有效的赐与处理。
那末,浏览器是否是也具有类似功能呢?Internet Explorer(IE)3.0或更高版本能够像Excel1样显示Microsoft Excel 工作表格, 条件是客户机需要装栽 Excel。 假设用户打开IE浏览器并输进Excel工作表格文件名做为URL,IE就会打开工作表。IE利用文件的扩大名以辨别是否是是mime格式文件并启动相应的利用程序, 当IE处理Excel mime格式文件时,IE将该文件转变成application/vnd.ms- excel并启动Excel供用户查看有关的表格数据。
本文将讨论如何建立ASP主页,该主页能够将HTML数据流传送给Excel电子数据表。 利用这1技术IE浏览器可以像Excel那样显示HTML数据表。在下面的例子当中, ASP主页将启动1组件,该组件可以处理存储在NWIND SQLSever 6.5中的雇员表记录,同时将该表以HTML表格情势显示。
建立HTML表格
首先建立ASP主页,将该主页添加到Visual InterDev项目中,文件名为ContentType.asp, 犹如图 A 。然后将代码A所显示的代码添加到主页中,第1行代码可以将所触及主页的mime type转变成Excel mime type。下面几行代码将启动我们早先建立的组件以获得ADOR记录区的数据。 这些代码犹如ListingA中所显示将在记录区循环处理并建立1个HTML表格, 该表格包括雇员表中每行的记录。
代码 A:Code for adding new ASP page to Visual InterDev Project
<%@ Language=VBScript %>
<%Response.ContentType = "application/vnd.ms-excel"%>
<%
Dim objEmployee, rs
set objEmployee=server.CreateObject("EmpReport.Employee")
Set rs = objEmployee.GetEmployee()
'Draw a Table
%>
Employee Report | |||
Employee Id | First Name | Last Name | Title |
<%=rs("EmployeeId")%> | <%=rs("LastName")%> | <%=rs("FirstName")%> | <%=rs("Title")%> |
完成输进代码后, 保存并浏览该主页。该主页犹如图 B 。留意该电子表格中的所有行并未实行任何格式化处理。当我们使用Excel VBA组件创建工作表格时,我们可以利用VBA方式对表格加以调剂。 但是,在使用HTML方式下对表格加以通常的格式化处理是比较困难的,除非你能方便地显示和读取HTML表格的有关数据。利用ASP主页技术我们能够做到这1点,而且可以实现目前Microsoft Excel所支持的所有功能, 其中包括SUM功能。需要留意的是,利用HTML创建的工作表格中没有包括1些标准的标示符号,例如 及
。当我们建立与Excel工作表格互换数据的HTML表格时,尽可能不要在ASP主页中使用,,等标示符号,由于Excel工作表格通常没法正确这些标示符号。在HTML表格中使用标准的Excel功能
Excel 97答利用户利用Excel所具有的运算公式在HTML表格中实行标准的计算处理,例如使用total及sum等运算功能。利用这1特点的明显上风是,将需要实行计算处理的工作表格移到客户端处理从而极大的减少了对宝贵的服务器资源的占用,同时也减少了在服务器与客户机之间实行信息传递的网络负担。例如图 C 所示起名为sumit.asp的主页的情况, 建立的HTML表格显示了Excel工作表格中两列的总和。 请留意代码B中的代码, 第1行代码将表中的内容格式转变成Excel格式, 如此浏览器将得知是哪种类型的利用程序在为HTML表格传递数据。我们建立了1个具有两列的表格,第2列行中包括了两组数值:2和3。第3行中的数值为前两个数值的总和,这里使用的是Excel的=sum(b1:b2)计算功能。
代码 B: Code for creating an HTML table that displays sum of two columns in Excel worksheet
<%@ Language=VBScript %>
<%Response.ContentType = "application/vnd.ms-excel"%>
2 | |
3 | |
Sum | =SUM(B1:B2) |
结论有好几种不同的方式可以利用浏览器利用程序显示Excel工作表格。 具体使用哪1种方式要依照不同情况而定:你所要实行的数据处理是在客户机上还是在服务器中? 在程序运行进程当中是否是需要多种的格式化处理? 终极用户所使用的是否是是IE浏览器?假设你的工作表格比较复杂而且10分重要,你最好是考虑建立1Excel模板,然后利用服务器端VBA COM将数值填进。 假设你的工作表格比较简单或只是在客户机端运行处理,你可以考虑使用HTML数据流处理。另1方面,假设你的用户使用的是Netscape Navigator浏览器,那末你的所有的数据处理必须在服务器端运行并使用COM VBA组件。
http://www.fw8.net/TAG:数据,代码,工作,表格,主页
评论加载中...
|