将excel导入C#窗体中的数据表时出错

本文关键字:数据表 出错 窗体 excel 导入 | 更新日期: 2023-09-27 18:20:58

我有一个excel表,excel表中的每一列都有不同的数据类型。excel表格中的一列具有类似的值

**Column name**
6%
10%
15%
<blankvalue>
<blankvalue>
<blankvalue>
<blankvalue>
<blankvalue>
<blankvalue>
<blankvalue>
<blankvalue>
<blankvalue>
<blankvalue>
<blankvalue>
<blankvalue>
<blankvalue>
FZDxxxCV
01
FZDLKMCV
FZDLKMCV
FZDLKMCV
FZDLKMCV

注意:"<blankvalue>"是excel中的一个空单元格。现在导入excel时,除了前3个值被转换为0.06、0.10、0.15的十进制值外,该特定列的值将变为空白。excel中前3个单元格的类型为"百分比",而其他单元格的类型则为"一般"。我还尝试更改连接字符串的属性,但仍然没有用。有什么建议吗?

将excel导入C#窗体中的数据表时出错

从Excel导入数据时,这是一个经典问题。您的ADO提供程序根据前几行猜测数据类型,任何不符合初始猜测的内容都将被丢弃。

在您的情况下,它是根据前面的行猜测列是数字,然后丢弃FZDLKMCV值。

这是一个巨大的痛苦,有各种各样的解决方案。StackOverflow中已经有很多关于这个问题的内容。试试这些链接:

使用C#访问Excel电子表格时,某些单元格偶尔会返回空值
excel文件的OleDB连接字符串帮助
OleDB&混合Excel数据类型:缺少数据