首页 新闻 赞助 找找看

C#导入Excel如何跳过指定的列

0
悬赏园豆:100 [已解决问题] 解决于 2013-08-22 17:33

导入Excel的时候有些数据导入不进来比如

那么像这样的有小计的这一行就导入不进去就会报Excel格式不对。那么如何忽略掉这一行或者跳过这一行? 请各位老师帮个忙谢谢。。。

罗罗づ的主页 罗罗づ | 初学一级 | 园豆:5
提问于:2013-08-22 16:40
< >
分享
最佳答案
0

看你用什么方式,如果是OLEDB的话,直接用语句select * from [sheet1$] where  col<>'小计'

类似这样的写法即可~

收获园豆:100
幻天芒 | 高人七级 |园豆:37175 | 2013-08-22 16:46

这样就查询就没有结果了。所有的都查询不到了。能在写具体点吗?

罗罗づ | 园豆:5 (初学一级) | 2013-08-22 16:55

@罗罗づ: 你默认就应该是“select * from table 吧”,然后现在只是加个判断而已~不会没数据的~

当然,col就是你“小计”列的列名。

幻天芒 | 园豆:37175 (高人七级) | 2013-08-22 17:04

@幻天芒: select * from [$Sheet1] where 分店 '小计'?这样么这个分店是列名这样吗?

罗罗づ | 园豆:5 (初学一级) | 2013-08-22 17:13

@罗罗づ: 反正都是查询~

幻天芒 | 园豆:37175 (高人七级) | 2013-08-22 18:06
其他回答(2)
0

根据关键列,判断是否有值,如没有就先去掉这一行

中小刀 | 园豆:208 (菜鸟二级) | 2013-08-22 16:43

请问老师如何判断?

支持(0) 反对(0) 罗罗づ | 园豆:5 (初学一级) | 2013-08-22 16:54
0

你把数据读取到datatable后遍历这table的行,datarow 然后判断小记所在列,如果是字符“小记”那就忽略就可以了。

小兵仔 | 园豆:1240 (小虾三级) | 2013-08-22 17:00

 我用的foreach遍历的 在foreach里面写If吗?

支持(0) 反对(0) 罗罗づ | 园豆:5 (初学一级) | 2013-08-22 17:04

@罗罗づ: 

对啊,

if (string.Format("{0}", dt.Rows[i][j]).Trim() == "小记")
{
continue;
}

支持(0) 反对(0) 小兵仔 | 园豆:1240 (小虾三级) | 2013-08-22 17:19
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册