2016-04-27 80 views
0

当我没有在服务器上安装Microsoft Excel时,如何读取vb6中的excel文件。 我想添加“Microsoft Excel 12.0对象库”的引用,但我看不到要添加到引用中的对象。 我应该下载哪些文件或dll文件才能使其正常工作。在VB6中读取Excel文件

Dim xl As Excel.Application 
Dim xlwBook As New Excel.Workbook 
Dim xlSheet As New Excel.WorkSheet` 

我可以使用这个应用程序,当我没有安装在我的系统上的Excel?

任何帮助将被赏识。

+0

弹出一个cmd提示符,输入odbcad32。您可以使用的驱动程序选项卡下。您也可以使用jet引擎或ACE OLE DB,但您可能需要从Microsoft安装accessdatabaseengine.exe。 – cup

+0

我已经安装了访问数据库引擎。我可以在ODBC管理器中看到Microsoft Excel驱动程序。但是当我试图在参考文献中添加它时说“不能添加参考”。我在做什么是正确的? – KloppForKop

+0

https://support.microsoft.com/zh-cn/kb/195951 这是一篇文章,详细介绍了读取excel文件的步骤,就好像它是数据库一样。它需要以表格格式。 – 2016-04-27 22:09:35

回答

1

我使用 “的Microsoft Excel 14.0对象库”(Office 2010中),并将其指向直奔EXCEL.EXE

VB6 References

办公室2007+有利于.NET但对于VB6我觉得你可以发挥它通过安装工作Office Primary Interop Assemblies

而您可能需要使用create object。像,

Public objExcel As Object 'instead of Excel.Application 
Set objExcel = CreateObject("Excel.Application") 
+0

感谢您的回复!你提到的方式即使在我没有添加任何参考时也能正常工作。但我试图通过添加“Microsoft Excel 12.0对象库”使用“Excel.Application”来使其工作。 – KloppForKop

+0

将它用作对象并直接用作应用程序有什么主要区别? – KloppForKop

+0

当直接使用对象,如“Excel.Application”时,它被称为早期绑定。您将需要开发机器和客户机器中的特定版本的参考。当使用CreateObject时,它被称为后期绑定,编译器不会为程序集的内部结构(智能感知不会工作)而烦恼,该对象是用相同名称的程序集动态创建的(版本不重要) – lal

1

如果你没有Excel安装,你不能使用它的COM模型(Excel.Application)或其它地方所提到的PIA的(这将是没有用的,即使你确实有安装Excel的)。

您应该使用ODBC & ADO来执行此操作。

,我可以看到在ODBC管理Microsoft Excel驱动程序..但是当我尝试添加在参考它说:“不能添加引用”

你不引用在驱动程序中,您可以参考在连接字符串中通过名称指定驱动程序的ADO(Microsoft ActiveX Data Objects)。

有很多这样的例子,例如, https://support.microsoft.com/en-us/kb/278973

+0

感谢您提供有价值的信息。我会从你提供的链接中尝试它!非常感谢.. – KloppForKop