如何将记录集直接保存成EXCEL文件

xuedaniel 2005-08-05 09:38:11
VB中如何将记录集直接保存成EXCEL文件?急用。谢谢!
...全文
257 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
henry_gz 2005-08-21
  • 打赏
  • 举报
回复
Use Method CopyFromRecordset


Example
------------------------
Private Sub cmdLoad_Click()
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim excel_app As Excel.Application
Dim excel_sheet As Excel.Worksheet

Screen.MousePointer = vbHourglass
DoEvents

' Open the Access database.
Set conn = New ADODB.Connection
conn.ConnectionString = _
"Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & txtAccessFile.Text
conn.Open

' Select the Access data.
Set rs = conn.Execute("Books")

' Create the Excel application.
Set excel_app = CreateObject("Excel.Application")

' Uncomment this line to make Excel visible.
' excel_app.Visible = True

' Open the Excel workbook.
excel_app.Workbooks.Open txtExcelFile.Text

' Check for later versions.
If Val(excel_app.Application.Version) >= 8 Then
Set excel_sheet = excel_app.ActiveSheet
Else
Set excel_sheet = excel_app
End If

' Use the Recordset to fill the table.
excel_sheet.Cells.CopyFromRecordset rs
excel_sheet.Cells.Columns.AutoFit

' Save the workbook.
excel_app.ActiveWorkbook.Save

' Shut down.
excel_app.Quit
rs.Close
conn.Close

Screen.MousePointer = vbDefault
MsgBox "Ok"
End Sub
奔跑9999 2005-08-08
  • 打赏
  • 举报
回复
打開Excel直接寫入即可阿!
xuedaniel 2005-08-08
  • 打赏
  • 举报
回复
这样效率太低了呵
xuedaniel 2005-08-08
  • 打赏
  • 举报
回复
如果是自己使用就很简单,关键我是要做成程序的方式给用户,有错误时叫用户导出数据给我看呵。
zuoxingyu 2005-08-08
  • 打赏
  • 举报
回复
我曾经尝试过一个比较方便的办法来解决
1:把你的记录查询语句复制到SQL查询分析器里,执行查询,得到结果
2:把得到的结果写如一个临时表里,
3:其实1,2可以放到一起写的。。右击这个临时表,选择所有任务,然后选择导出数据,进入导出数据向导,选择导出到EXCEL,里面有很多可以选择的。]
4:完成操作
of123 2005-08-05
  • 打赏
  • 举报
回复
使用CopyFromRecordset语句,可以直接把记录集写入Excel工作表。
使用DAO的用意是支持Excel 97;如果使用ADO记录集,则仅支持Excel 2000。
下面是完整的例子:

Dim db As dao.Database
Dim rs As dao.Recordset
Dim fd As dao.Field
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
Dim cellCnt As Integer

' Open the destination Excel workbook.
Set xlApp = New Excel.Application
Set xlBook = xlApp.Workbooks.add
Set xlSheet = xlBook.ActiveSheet

xlBook.PrintPreview
' Open the recordset.
Set db = DBEngine.Workspaces(0).OpenDatabase(App.Path & "\bmkq.mdb")
Set rs = db.OpenRecordset("SELECT ......")
' Title
xlSheet.Cells(1, 1).Value = "考勤汇总表"
' Tabel Heads
cellCnt = 1
For Each fd In rs.Fields
Select Case fd.Type
Case dbBinary, dbGUID, dbLongBinary, dbVarBinary
' This type of data can't export to excel
Case Else
xlSheet.Cells(2, cellCnt).Value = fd.Name
xlSheet.Cells(2, cellCnt).Interior.ColorIndex = 33
xlSheet.Cells(2, cellCnt).Font.Bold = True
xlSheet.Cells(2, cellCnt).BorderAround xlContinuous
cellCnt = cellCnt + 1
End Select
Next
' This is all it takes to copy the contents
' of the recordset into the first worksheet
' of Book1.xls.
xlBook.Worksheets(1).Range("A3").CopyFromRecordset rs
xlApp.ActiveWindow.DisplayZeros = False

xlBook.Worksheets(1).Range("A3").Select

xlApp.Visible = True
' Clean up everything.
'xlBook.Save
'xlBook.Close False
'xlApp.Quit
rs.Close
db.Close
'Set xlBook = Nothing
'Set xlApp = Nothing
Set rs = Nothing
Set db = Nothing
exitsub:
软件简介: 西华大学不挂科V2.3 (版本2.3.0.2)(以下简称不挂科)是一个集绩录入、绩详单、点名册查询、学生照片浏览、绩查询五大功能为一体的绿色软件,以最初版本不挂科软件(只含绩查询功能)版面为设计原型,并且在功能上不断扩展的一款小软件,适合于西华大学校本部和人南校区同学使用。 软件信息: 版本号:2.3.0.2 更新日期:2013-12-21 软件描述:不挂科2.3 软件作者:秦新 版权信息:QinXin 版权所有 快捷键: 回车键:输入验证码后,按下回车键即可登录; 查照片模块,输入学号后,按下回车键即可查询。 Page Up键:查照片模块,按下Page Up键查询上一个学生照片。 Page Down键:查照片模块,按下Page Up键查询下一个学生照片。 注意事项: 1、个别安全软件会提示为木马,请添加信任并在隔离区恢复文件,编者以人格担保文件安全; 2、打开软件,输入验证码,点击“登录”,登录功后,软件底部会弹出“绩录入”、“绩详单”、“点名册”、“查照片”、“绩查询”五个图片按钮,默认绩查询; 3、第一次使用软件时,软件会在运行目录中自动生“选课号.txt”(已存在则不自动生),用 于记录选课号,请勿随意删除,否则将会丢失已经记录的选课号(“清空”按钮也会清掉所有选课号记录),选课号.txt文件中有选课号范本,文件的每一行为一条选课号记录,手动增加记录后加上回车符,重新运行软件即可; 4、需要用到选课号的模块,输入选课号点击“查询”后,程序会自动记录未保存的选课号; 5、选课号来源:使用自己的帐号登录教务系统,点击“信息查询”菜单,选择“学生选课情况查询”,找到自己要查询课程的选课课号,如:(2012-2013-2)-4200049-0120030086-2。也可以使用本软件的绩查询模块,查询学生选课情况获取选课号; 6、要使用点名册和绩详单模块,请确保电脑安装了Microsoft office Excel 2003或者更高版本,查询时请关闭所有Excel表,以及Microsoft office Excel程序。对于没有出来的绩,查询到的绩详单只有课程的基本信息,没有具体数据。若需复制绩单或点名册,数据显示出来之后,单击开始菜单,程序,Microsoft Office,Microsoft Office Excel 2003(或者其他更高版本Excel),将软件界面中你需要的内容复制下来,然后到Excel表粘贴。或者单击表格的任一单元格,然后再次单击“查询”按钮,会有弹窗信息框,“该文档已经修改,是否保存修改结果?”,选择是,保存类型选择Excel工作簿; 7、“点名册”和“绩详单”在打开表格时会提示打开方式,请选择“打开”,并取消勾选“打开此类问件时总是提示”; 8、外网用户查询速度较慢,建议使用校园内网查询;

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧