如何将表中的数据导出到电子表格中

 我来答
手机用户45994
推荐于2016-08-23 · TA获得超过293个赞
知道答主
回答量:102
采纳率:0%
帮助的人:132万
展开全部
但是这种方法会占用较多的系统资源,并且缺乏通用性。如果一个数据库没有导出的功能怎么办?下面的这段程序代码利用记录集实现导出的功能,这种做法的好处是显而易见的:你可以控制要导出的数据,而不用将整个表的内容都导出到电子表格中。为简单起见下面的程序代码仍将整个表的数据导出到电子表格中。如果你有兴趣的话,对下面的代码稍加改动就可做成更为通用的一个类或是一个控件。 首先在窗体上添加一个标签控件和一个命令按钮,然后在工程中添加对DAO引用。利用下面的程序代码就可将表中的数据导出到电子表格中。 Option EXPlicit Private Sub Command1_Click() Dim tempDB As Database Dim i As Integer ' 循环计数器 Dim j As Integer Dim rCount As Long ' 记录的个数 Dim xl As Object ' OLE自动化对象 Dim Sn As Recordset Screen.MousePointer = 11 Label1.Caption = "打开数据库..." Label1.Refresh Set tempDB = Workspaces(0).OpenDatabase("Nwind.mdb") Label1.Caption = "创建Excel对象..." Label1.Refresh Set xl = CreateObject("Excel.Sheet.8") Label1.Caption = "创建快照型记录集..." Label1.Refresh Set Sn = tempDB.OpenRecordset("Customers", dbOpenSnapshot) If Sn.RecordCount > 0 Then Label1.Caption = "将字段名添加到电子表格中" Label1.Refresh For i = 0 To Sn.Fields.Count - 1 xl.Worksheets(1).cells(1, i + 1).Value = Sn(i).Name Next Sn.MoveLast Sn.MoveFirst rCount = Sn.RecordCount ' 在记录中循环 i = 0 Do While Not Sn.EOF Label1.Caption = "Record:" & Str(i + 1) & " of" & _ Str(rCount) Label1.Refresh For j = 0 To Sn.Fields.Count - 1 ' 加每个字段的值加到工作表中 If Sn(j).Type < 11 Then xl.Worksheets(1).cells(i + 2, j + 1).Value = Sn(j) Else ' 处理Memo和LongBinary 类型的字段
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式