中国站长下载-为中国站长提供最好最全的建站资源! 首 页发布资源有事留言繁體中文
设为首页
加入收藏
联系我们
 
您当前的位置:中国站长下载 -> 文章中心 -> 网页编程 -> ASP编程 -> 文章内容  虚拟主机 域名注册 退出登录 用户管理
栏目导航
· ASP编程 · .NET编程
· PHP编程 · JSP编程
· CGI 专区
热门文章
· sndvol32 - sndvol3...
· [组图] FLASH:《大话李白》...
· 个人网站到底能赚多...
· [图文] Rundll.exe是病毒吗...
· [组图] Flash:制作MV
· 价值12万元的网站SE...
· 网站创业者,你需要...
· 一个成功的网站设计...
· [图文] FLASH:韩国导航条解...
· 中国网站的赚钱模式...
相关文章
· [图文] ASP中利用OWC控件实...
利用owc建立EXECL的例子
作者:不详  来源:不详  发布时间:2006-8-13 0:45:38  发布人:chinazhan

 减小字体 增大字体

     呵呵,这个是我介绍制作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
  %>
  
  注意:请注意权限的问题……经常有人发EMAIL给我关于这方面的问题,实际上你只要给iuser_machine以适当的权限就可以了,比如对存放在EXECL文件的地方要有写的权限
  
  :),下次我看看会再介绍一种生成EXECL的方法,可以利用BCP做的。
  
  
  
  
    做人要厚道,请注明转自chinazhan中国站长(www.ChinaZhan.com)。

 
[] [返回上一页] [打 印] [收 藏]
∷相关文章评论∷    (评论内容只代表网友观点,与本站立场无关!) [更多评论...]
中国站长下载
中国站长下载

本页只接受PR>=4 IT类站点连接,申请连接,谢谢您们的支持!希望我们的下载站能够真正帮到中国的站长们!
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图
Copyright © 2005-2006 ChinaZhan.Net. All Rights Reserved .