| 
  四、实例(存取Excel数据表)
    为了更进一步说明这些函数的用法,本文给出一个存取Excel数据表的例子,其它函数的存取方法与此类似。假设有一个如图2的名为1.xls的Excel文件, 含有三个工作表一班、二班、三班。下面得用上面的函数存取工作表“一班”的数据。
 
  
  图2 
  编写ASP文件(文件名为1.asp)存取此Excel中文件。
  1.asp源代码
  ASP文件 <%
  ' 建立Connection对象
  Function CreateExcelRecordset(xlsfile,sheet)
  Dim rs,conn,Driver,DBPath
  Set conn = Server.CreateObject("ADODB.Connection")
  Driver = "Driver={Microsoft Excel Driver (*.xls)};"
  DBPath = "DBQ=" & Server.MapPath( "xlsfile" )
  ' 调用Open 方法连接数据库
  conn.Open Driver & DBPath
  set CreateExcelRecordset = Server.CreateObject("ADODB.Recordset")
  ' 打开Sheet表,参数二'>Connection对象
  CreateExcelRecordset.Open "Select * From ["&sheet&"$]",conn, 2, 2
  End Function
  %>
  <HTML>
  <BODY bgcolor="#FFFFFF">
  <TABLE BORDER=1>
  <TR BGCOLOR=#00FFFF>
  <%
  '本行是关键行,对函数的引用
  ' set rs=CreateExcelRecordset("1.xls","一班")
  Part I输出“表头名称”且表头的背景的颜色为#00FFFF
  ' For i=0 to rs.Fields.Count-1
  Response.Write "<TD>" & rs(i).Name & "</TD>"
  Next
  %>
  </TR>
  <%
  ' Part '>输出数据表的“内容”
  rs.MoveFirst ' 将目前的数据记录移到第一项
  While Not rs.EOF ' 判断是否过了最后一项
  Row = "<TR>"
  For i=0 to rs.Fields.Count-1
  Row = Row & "<TD>" & rs(i) & "</TD>"
  Next
  Response.Write Row & "</TR>"
  rs.MoveNext ' 移到下一项
  Wend
  %>
  </TABLE></CENTER>
  </BODY>
  </HTML>
  利用IE和PWS(Personal Web Server)后浏览结果如图3:
 
  
  图3 
  参考文献:
  [1]DataBase and the World Wide Web Marianne Winslett, University of Illinois
  [2]http://www.aspobjects.com 
 
  
 
  |