快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

利用OWC建立EXECL的例子

呵呵,这个是我介绍制作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做的。
返回类别: 教程
上一教程: 缩小SQL SERVER数据库日志
下一教程: 数据库正规化和设计技巧(3)

您可以阅读与"利用OWC建立EXECL的例子"相关的教程:
· 从一个MYSQL的例子来学习查询语句
· MYSQL常用查询的例子
· 在SQL2000查询中使用XDR的例子
· 利用MYSQL的一个特性实现MYSQL查询结果的分页显示
· 为数据库建立索引(一)
    微笑服务 优质保证 索取样品