1

我有以下问题。很少有从 excel 文件中读取一些数据的应用程序。这是我的连接字符串:

            @"Provider=Microsoft.ACE.OLEDB.12.0;"+
            @"Data Source=" + m_excelFileName + ";" +
            @"Extended Properties=Excel 12.0;"

当我使用它时,一切都很好,但是我的 excel 文件中第一行的数据被读取为列名。我不想要它,所以我必须更改我的连接字符串并添加:

           @"Provider=Microsoft.ACE.OLEDB.12.0;"+
           @"Data Source=" + m_excelFileName + ";" +
           @"Extended Properties=Excel 12.0;"+
           @"HDR=NO;";

我不知道为什么,但是我的阅读功能不起作用,我已经传达了:

Could not find installable ISAM

怎么了?感谢您的任何建议。

4

3 回答 3

1

尝试将扩展属性括在引号中...

"Provider=Microsoft.ACE.OLEDB.12.0;"+
"Data Source=" + m_excelFileName + ";" +
"Extended Properties=\"Excel 12.0;"+
"HDR=NO;\"";

并删除“@”,因为您需要转义引号

于 2011-01-30T22:59:57.580 回答
1

来自微软支持

提供者将您的字段命名为 F1、F2 等。因为扩展属性字符串现在包含多个值,所以它本身必须用双引号括起来,再加上一对额外的双引号来告诉 Visual Basic 将第一组引号视为文字值,如下例所示(为了视觉清晰,添加了额外的空格)。

支持pilotcam的回答。

祝你好运!

于 2011-01-30T23:03:24.413 回答
0

不知道我理解的好不好。我尝试了 piloctam 的代码,但有些东西不好。有些报价不好。也许在一行中:

@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + m_excelFileName + ";Extended Properties=Excel 12.0; HDR=NO;";

那没问题?

于 2011-01-30T23:16:58.640 回答