您的位置:程序门 -> .net技术 -> vb.net



用ado读excel第256列有数据时失败,如何解决?


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


用ado读excel第256列有数据时失败,如何解决?[已结贴,结贴人:yjtayum]
发表于:2007-03-19 12:28:32 楼主
方法用adodb读excel
连接字符串如下:
"provider=microsoft.jet.oledb.4.0;data   source= "   &   strfilepath(excel文件全路径)   &   ";extended   properties= 'excel   8.0;hdr=yes;imex=1 ' "
sql文如下:
"select   *   from   [ "   &   strsheetname   &   "$] "
当第256列有数据或单元格的属性发生变化时,ado的open函数就会失败,错误信息如下:
定义的列数过多
如何解决,望指教!
发表于:2007-03-19 12:31:401楼 得分:0
使用ado.net无法解决
使用   excel.application吧
服气256列
发表于:2007-03-19 13:00:252楼 得分:0
to   blackant2(乔峰)
之前我用的就是excel.application,但当数据量很大时,较之ado慢了很多,考虑到性能的原因才改用ado方式的,有其他方法可以让ado不读第256列吗?
发表于:2007-03-19 13:42:043楼 得分:90
使用命名区域
将表strsheetname分成两块或更多
例挺入名称
rang1=sheet1!$a:$d
rang2=sheet1!$e:$h
然后select   *   from   rang1
select   *   from   rang2
发表于:2007-03-19 13:53:084楼 得分:10
太多了,沒有試過,application應該可以,ado沒有讀過那麼多.
发表于:2007-03-19 16:58:305楼 得分:0
在blackant2(乔峰)兄的帮助下,问题得以解决,方法如下
通过直接修改sql文来实现不读第256列的数据
select   *   from   [ "   &   strsheetname   &   "$a1:iu65536] "


快速检索

最新资讯
热门点击