当前位置: 首页 > 图文教程 > 网络编程 > ASP > 利用owc建立EXECL的例子

ASP
ASP字符串大写转换成小写 ASP小写转换成大写 ucase lcase
asp base64加解密函数代码
Discuz!NT 论坛整合ASP程序论坛
discuz 2.0整合asp系统,用户添加函数
P3P 和 跨域 (cross-domain) cookie 访问(读取和设置)
通过asp程序来创建access数据库
检查access数据库中是否存在某个名字的表的asp代码
asp #include file 与 #include virtual 的区别小结
一个带采集远程文章内容,保存图片,生成文件等完整的采集功能
asp 横排显示数据
asp base64 utf-8为了兼容asp.net的base64
两个非常规ASP木马(可躲过扫描)
asp DateDiff实现文字在特定时间后消失
ASP所有的Session变量获取实现代码
关于ASP eof与bof 区别分析
asp ajax注册验证之 防止用户名输入空格
asp sqlserver 执行存储过程返回记录集报对象关闭时不允许操作
ASP 获取文件扩展名函数getFileExt()
asp 简单分页代码
asp删除mssql数据库中没有记录的图片代码

ASP 中的 利用owc建立EXECL的例子


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 181 ::
收藏到网摘: n/a

       呵呵,这个是我介绍制作EXECL的第三种方法了,对于OWC,我在前面的文章里也已经有所介绍,废话少说,请看代码:
  
  <%
   Option Explicit
  
   Class ExcelGen
  
   Private objSpreadsheet
   Private iColOffset
   Private iRowOffset
  
   Sub Class_Initialize()
   Set objSpreadsheet = Server.CreateObject("OWC.Spreadsheet")
  
   iRowOffset = 2
   iColOffset = 2
   End Sub
  
   Sub Class_Terminate()
   Set objSpreadsheet = Nothing ''Clean up
   End Sub
  
   Public Property Let ColumnOffset(iColOff)
   If iColOff > 0 then
   iColOffset = iColOff
   Else
   iColOffset = 2
   End If
   End Property
  
   Public Property Let RowOffset(iRowOff)
   If iRowOff > 0 then
   iRowOffset = iRowOff
   Else
   iRowOffset = 2
   End If
   End Property
  
  
   Sub GenerateWorksheet(objRS)
  
   ''Populates the Excel worksheet based on a Recordset''s contents
   ''Start by displaying the titles
   If objRS.EOF then Exit Sub
  
   Dim objField, iCol, iRow
   iCol = iColOffset
   iRow = iRowOffset
  
   For Each objField in objRS.Fields
   objSpreadsheet.Cells(iRow, iCol).Value = objField.Name
   iCol = iCol + 1
   Next ''objField
  
   ''Display all of the data
   Do While Not objRS.EOF
   iRow = iRow + 1
   iCol = iColOffset
  
   For Each objField in objRS.Fields
   If IsNull(objField.Value) then
   objSpreadsheet.Cells(iRow, iCol).Value = ""
   Else
   objSpreadsheet.Cells(iRow, iCol).Value = objField.Value
   End If
  
   iCol = iCol + 1
   Next ''objField
  
   objRS.MoveNext
   Loop
  
   End Sub
  
  
   Function SaveWorksheet(strFileName)
   ''Save the worksheet to a specified filename
   On Error Resume Next
   Call objSpreadsheet.ActiveSheet.Export(strFileName, 0)
  
   SaveWorksheet = (Err.Number = 0)
   End Function
  
   End Class
  %>
  
  <%
   Dim objRS
   Set objRS = Server.CreateObject("ADODB.Recordset")
   objRS.Open "SELECT * FROM titles", "DSN=FooBar"
  
   Dim objExcel
   Set objExcel = New ExcelGen
  
   objExcel.RowOffset = 4
   objExcel.ColumnOffset = 1
  
   objExcel.GenerateWorksheet(objRS)
   If objExcel.SaveWorksheet(Server.MapPath("foo.xls")) then
   Response.Write "Worksheet saved. <a href=""foo.xls"">Download</a>"
   Else
   Response.Write "Error in saving worksheet!"
   End If
  
   Set objExcel = Nothing
  
   objRS.Close
   Set objRS = Nothing
 &nb