我永远遇到了这个问题,从来没有设法解决这个问题。
我正在将excel(.xls)文件导入到asp记录集中。大部分时间这都很棒。
我的列中包含以下值
4
4
5,6
3
除了5,6之外,Asp读取了这些值。我已经尝试格式化单元格,这没有任何区别。似乎asp(或excel)试图通过检查值来确定单元格的类型。无论出于何种原因,如果某些单元格与其他单元格的格式不同,则会引发此打嗝。
答案 0 :(得分:2)
问题是ADO扫描前8行,并根据它在每列中找到的数据设置列类型。因此,如果前8行包含数字,则将该列设置为numeric,并为任何其他值返回null,例如,如果第9行包含文本或逗号。有关如何避免此问题的一些建议,请参阅http://blog.lab49.com/archives/196。
答案 1 :(得分:0)
您是否尝试过设置5,6到5.6?
答案 2 :(得分:0)
尝试将IMEX = 1添加到连接字符串中。
如果不能解决问题,请尝试更改以下注册表项值: HKLM /软件/微软/喷气/ 4.0 /发动机/ EXCEL / “TypeGuessRows”= DWORD:00000000
如果您有64位系统,则注册表项将位于: HKLM /软件/ Wow6432node /微软/喷气/ 4.0 /发动机/ EXCEL / “TypeGuessRows”= DWORD:00000000