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

ASP
用PreRender解决DataGrid分页最后一页行数不满的排版问题
基于ASP的站内多值搜索
XLS与MDB文件格式互换全攻略
一个用ASP生成html的新方法
将指定的asp文件内容生成HTML文件
使用Session记录页面地址和实现页面返回功能
IIS6架设网站常见问题及症状举例答疑
ASP调用WEBSERVICE文档
用Asp获取Dll加密新闻内容
Access2000数据库80万记录通用快速分页类
如何防止ASP木马在服务器上运行
如何使用javascript来写ASP程序
用存储过程实现ASP对数据库访问
学会在ASP中使用存储过程
ASP中和星期有关的自定义函数
水晶报表打印单据时增加空行或空白行的示例脚本
ASP+Access莫名奇妙的sql语句错误解决
ASP获取客户端MAC地址
在ASP中执行Ping命令,并且返回结果
如何使用ASP建立虚拟的FTP服务器

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 200 ::
收藏到网摘: 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