如何传数据到EXCEL中已经做好的表格中
编号:QA002453
建立日期: 2000年1月18日 最后修改日期:2000年2月23日
所属类别:
Q
HiRong:
编程工具: vb6
操作系统: win98
问题: 我想将ACCESS中的数据传到EXCEL中已经做好的表格中,然后打印出来,请问如何传数据,谢谢!
A回答:
借助Automation你可以实现数据传递,下面是一个简单的例子:
Dim ExcelApp As Object
Private Sub Command1_Click()
Dim i
Set ExcelApp = CreateObject("excel.application")
ExcelApp.Workbooks.Add
i = 1
While Not Data1.Recordset.EOF
ExcelApp.Range("a" & i).Value = Data1.Recordset("CategoryName")
i = i + 1
Data1.Recordset.MoveNext
Wend
ExcelApp.Visible = True
End Sub
相关问题:
QA003495 "能否用VB的ADO的方法访问Excel文件"
QA003022 "如何通过DDE获得Excel的数据"
QA002044 "怎样才能加快VB中向EXCEL中添加数据的速度"
QA000836 "如何知道Excel97的命令集"
QA000106 "如何在VB中调用Excel的工作薄预览功能?"
QA000093 "调用Excel,可Excel总是一闪而过"
QA001382 "如何调用Excel打开.xls文件"
QA000115 "在VB中如何实现把当前库或表转换为另外一种数据库文件"
JiaQiang Xu的意见:
在VB中编写Excel的外接程序Addin,生成一个 Dll文件,在这个Addin中,用ADO或DAO读取Access,和一般方法无异。注册Dll后,在Excel的Com Addins列表中出现这个Addin,加载该Addin,发生OnConnection事件,该事件有一个参数Application,就是Excel事例,可据次编写代码将Access数据填到Excel单元格中。
如果你用VBA编写宏,就不能编译成DLL,除非安装office developer tools。Com Addin比Automation效率更高。
cobe的意见:
有一个更好些的办法,就是用xSheet.Range("A1").CopyFromRecordset RS
这样可以将一个DAO的Recordset直接拷贝到指定开始的单元格中.
此问题由李海回答。
附加关键字:编程, 源程序, programming, source code, Visual Basic, VB, 数据库, database, query, Office开发, office, ms office, office xp, office 97。
| |
|
|
| |
|
|