从VB6读取XLS文件

我如何从VB6读取XLS文件? 我不想使用ADO或自动化。

  • ADO不会为我的特定XLS文件工作,因为它猜测前几行数据中列的数据types。
  • 自动化不在了,因为Excel可能没有安装在机器上。

我希望基于经验的build议 – 我知道如何谷歌 🙂

ADO

对于IMEX = 1设置HKLM \ SOFTWARE \ Microsoft \ Jet \ 4.0 \ Engines \ Excel \ TypeGuessRows为0会产生奇迹。 我想知道这是否可以作为连接string的参数提供。

为了使ADO驱动程序更加可靠,可以使用在连接string中添加两个部分:

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\blah.xls;Extended Properties="Excel 8.0;HDR=YES;IMEX=1;MAXSCANROWS=12" 

这会迫使驱动程序在决定数据types之前扫描12行。