Excel 读出列中的数值 为空.

最近项目中有用到上传Excel .Excel 中列比较多,列中的数据有些为空,有些是有值的.在测试的过程中发现有时能读到列中的值,有时为空.有个和Excel 格式设置有关.如果这个列的前8行数据为空,又没有设置过格式,这时驱动就默认为文本,下面的行如果这个列有数值,就会读出为空.需要把所有要填写数值的格子设置为数值类型,Excel 才能正常读取.

参考:http://msdn2.microsoft.com/zh-cn/library/ms141683.aspx

缺少值。Excel 驱动程序读取指定源中一定数量的行(默认情况下为 8 行)以推测每列的数据类型。如果推测出列可能包含混合数据类型(尤其是混合了文本数据的数值数据时),驱动程序将决定采用占多数的数据类型,并对包含其他类型数据的单元返回 Null 值。(如果各种数据类型的数量相当,则采用数值类型。)Excel 工作表中大部分单元格格式设置选项不会影响此数据类型判断。可以通过指定导入模式来修改 Excel 驱动程序的此行为。若要指定导入模式,请在“属性”窗口中将 IMEX=1 添加到 Excel 连接管理器的连接字符串内的扩展属性值中。有关详细信息,请参阅 PRB:Excel 使用 DAO OpenRecordset NULL 作为返回值

原文地址:https://www.cnblogs.com/andycai/p/1721759.html