我写的一个将数据库数据导出到EXCEL的类(ASP)

excel|数据|数据库

clsExport2Excel.asp
<%
'类开始
Class clsExport2Excel

'声明常量、变量
Private strFilePath,strTitle,strSql,strField,strRows,strCols
Private strCn,strHtml,strPath
Private objDbCn,objRs
Private objXlsApp,objXlsWorkBook,objXlsWorkSheet
Private arrField

'初始化类
Private Sub Class_Initialize()
strCn = "driver={SQL Server};server=LIUHQ;UID=sa;PWD=sa;Database=MS"
set objDbCn = server.CreateObject("adodb.connection")
objDbCn.open strCn

strFilePath = ".\"
strTitle = "查询结果"
strRows = 2
strCols = 1
End Sub

'销毁类
Private Sub Class_Terminate()

End Sub

'属性FilePath
Public Property Let FilePath(value)
strFilePath = value
End Property

Public Property Get FilePath()
FilePath = strFilePath
End Property

'属性Title
Public Property Let Title(value)
strTitle = value
End Property

Public Property Get Title()
Title = strTitle
End Property

'属性Sql
Public Property Let Sql(value)
strSql = value
End Property

Public Property Get Sql()
Sql = strSql
End Property

'属性Field
Public Property Let Field(value)
strField = value
End Property

Public Property Get Field()
Field = strField
End Property

'属性Rows
Public Property Let Rows(value)
strRows = value
End Property

Public Property Get Rows()
Rows = strRows
End Property

'属性Cols
Public Property Let Cols(value)
strCols = value
End Property

Public Property Get Cols()
Cols = strCols
End Property

'
Public Function export2Excel()
if strSql = "" or strField = "" then
response.write "参数设置错误,请与管理员联系!谢谢"
response.end
end if

if right(strFilePath,1) = "/" or right(strFilePath,1) = "\" then
strFilePath = left(strFilePath,len(strFilePath)-1)
end if
if instr("/",strFilePath) > 0 then
strFilePath = replace(strFilePath,"/","\")
end if
strFilePath = strFilePath & "\"

set objFso = createobject("scripting.filesystemobject")
if objFso.FolderExists(server.mappath(strFilePath)) = False then
objFso.Createfolder(server.mappath(strFilePath))
end if

strFileName = strFilePath & cstr(createFileName()) & ".xls"

set objRs = server.CreateObject("adodb.RecordSet")
objRs.open strSql,objDbCn,3,3
if objRs.recordcount <= 0 then
strHtml = "暂时没有任何合适的数据导出,如有疑问,请与管理员联系!抱歉"
else
set objXlsApp = server.CreateObject("Excel.Application")
objXlsApp.Visible = false
objXlsApp.WorkBooks.Add

set objXlsWorkBook = objXlsApp.ActiveWorkBook
set objXlsWorkSheet = objXlsWorkBook.WorkSheets(1)

objXlsWorkSheet.Cells(1,1).Value = strTitle

arrField = split(strField,"||")
for f = 0 to Ubound(arrField)
objXlsWorkSheet.Cells(2,f+1).Value = arrField(f)
next

for c = 1 to objRs.recordcount
for f = 0 to objRs.fields.count - 1
'''身份证号码特殊处理
if objRs.fields(f).name = "pm_field_41325" or objRs.fields(f).name = "cardID" then
objXlsWorkSheet.Cells(c+2,f+1).Value = "'" & objRs.fields(f).value
'''就业特殊处理
elseif objRs.fields(f).name = "JiuYe" then
select case objRs.fields(f).value
case 1
objXlsWorkSheet.Cells(c+2,f+1).Value = "是"
case 0
objXlsWorkSheet.Cells(c+2,f+1).Value = "否"
case -1
objXlsWorkSheet.Cells(c+2,f+1).Value = "(未知)"
end select
else
objXlsWorkSheet.Cells(c+2,f+1).Value = objRs.fields(f).value
end if
next
objRs.movenext
next

objXlsWorkSheet.SaveAs server.mappath(strFileName)

strHtml = "Excel文件已经导出成功,您可以<a href='" & strFileName & "' target='_blank'>打开</a>文件并将文件另存到本地目录中!"

objXlsApp.Quit
set objXlsWorkSheet = nothing
set objXlsWorkBook = nothing
set objXlsApp = nothing
end if
objRs.close
set objRs = nothing

if err > 0 then
strHtml = "E

时间: 2024-09-12 23:25:56

我写的一个将数据库数据导出到EXCEL的类(ASP)的相关文章

PHP将Excel导入数据库及数据库数据导出至Excel的方法

         本文实例讲述了PHP将Excel导入数据库及数据库数据导出至Excel的方法.分享给大家供大家参考.具体实现方法如下:          一.导入           导入需要使用能读取Excel的组件,网上也有比较好的组件,这里分享我使用的:下载 提取码:vxyn.(注意两个文件有引用关系) ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 <?php //传入要导入的Excel的文件

PHP将Excel导入数据库及数据库数据导出至Excel的方法_php技巧

本文实例讲述了PHP将Excel导入数据库及数据库数据导出至Excel的方法.分享给大家供大家参考.具体实现方法如下: 一.导入 导入需要使用能读取Excel的组件,网上也有比较好的组件,这里分享我使用的:下载  提取码:vxyn.(注意两个文件有引用关系) <?php //传入要导入的Excel的文件名 function import_to_DB($filename) { require_once'reader.php'; $data = new Spreadsheet_Excel_Reade

求个C#把datagrid里面的数据导出到Excel的类,要.NET1.1版本能支持的。很久以前的项目了......

问题描述 RT 解决方案 解决方案二:protectedvoidbtn_out_Click(objectsender,EventArgse){Response.Clear();//获取或设置一个值,该值指示是否缓冲输出,并在完成处理整个响应之后将其发送Response.Buffer=true;//获取或设置输出流的HTTP字符集Response.Charset="UTF8";//将HTTP头添加到输出流Response.AppendHeader("Content-Dispos

Python实现数据库一键导出为Excel表格

依赖 Python2711 xlwt MySQLdb 数据库相关 连接 获取字段信息 获取数据 Excel基础 workbook sheet 案例 封装 封装之后 测试结果 总结 数据库数据导出为excel表格,也可以说是一个很常用的功能了.毕竟不是任何人都懂数据库操作语句的. 下面先来看看完成的效果吧. 数据源 导出结果 依赖 由于是Python实现的,所以需要有Python环境的支持 Python2.7.11 我的Python环境是2.7.11.虽然你用的可能是3.5版本,但是思想是一致的.

c#树形数据导出到excel,急切,在线等。

问题描述 数据表是这样存的.怎么实现把数据库数据导出到excel中,能自动生成如下表头.这个表头如何生成啊. 解决方案 本帖最后由 7259 于 2015-11-26 17:46:32 编辑解决方案二:有多少个末节点(没有子节点)就有多少列树的深度就是行数root节点在第一行父节点根据末节点合并单元格解决方案三:NPOI按照你给的Excel格式能操作生成然后单元格的数据就要看你表的结构去读进去了解决方案四:没有自动,要什么样的表头,也要你自己去填充,用微软的dll或者NPOI都可以或者自己先设计

求C#代码!!关于从Excel表中将数据导入Access数据库,以及Access数据库中的数据导出到Excel表的代码。急!!!晚上就得交差啊

问题描述 我需要从Excel表中将数据导入Access数据库,以及Access数据库中的数据导出到Excel表的代码,越具体越好!!望各位高手能不吝赐教 解决方案 解决方案二:不会吧?难道世间真的是如此残忍?为什么没人理我啊?高手们,算小弟我求你们了!难道是分不够多吗?初出江湖实在是身无分文啊----就不要太在意这个了,好不好啊?给我写写吧,万分感谢了!!解决方案三:这里是利用officeapplication方式来操作excel的http://blog.csdn.net/fangxinggoo

app-#安卓 自己写了一个可以连发数据的蓝牙APP可是运行时候崩溃了

问题描述 #安卓 自己写了一个可以连发数据的蓝牙APP可是运行时候崩溃了 本人菜鸟 先用Ontouch方法 + while循环 + thread休眠写了一个每隔100ms 按钮连续发送数据的蓝牙APP 但是在使用过程中 配对 以及连接蓝牙之后 可以发送大概5分钟 APP就崩溃了 崩溃是指:蓝牙还和我的手机连着 但是整个APP 按按钮没反应 也发送不了数据 但是其他菜单栏可以点开 关掉APP重开,APP就打不开了 只能关掉蓝牙设备 然后再打开APP 之后学习了handler用法 试着写了一段 整个

如何把数据库里的数据导出成excel格式?

问题描述 大家好!请问高手如何把数据库里的数据导出成excel格式(用asp.net实现)谢谢! 解决方案 解决方案二:mark~解决方案三:网上有相关的例子,很多哦!解决方案四:1.gridview显示数据库的所需数据2.gridview导出excel下面是button事件中的代码protectedvoidBtn_ExportClick(objectsender,EventArgse){Response.ClearContent();Response.AddHeader("content-di

怎么用C#将SQL数据库数据导出到自己已经排好版的word文件中

问题描述 请各位老师帮忙:怎么用C#将SQL数据库数据导出到自己已经排好版的word文件中,就是将SQL数据库中的数据一一对应的导入到已经排好版的word文件表格中,急用,谢谢!! 解决方案 解决方案二:那得结合VBA编程吧?读WORD文档,把数据插入到表格中.解决方案三:这个问题确实很复杂而且网上相关介绍也不多唉解决方案四:你需要先读取模板找到插入的位置,然后插入即可可参考http://msdn2.microsoft.com/zh-cn/library/d2tx7z6d(VS.80).aspx