vb读取excel数据去掉空行

lanlanxiezhqhd 2010-04-28 02:23:35
各位大哥大姐们,我遇到一个小麻烦,在网上找了很久也没有个确切的答案,就想问问大家,我用adodb链接excel,读取出excel的数据放在dataset里,把dataset的值直接绑定到窗体上的dataGrid了,但是execel上面有数据,下面有很多空的行,一起读到了dataGrid上了,我想问,怎么把这些空行在程序里去掉?
...全文
550 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
lanlanxiezhqhd 2010-04-29
  • 打赏
  • 举报
回复
解决了,呵呵,谢谢大家!每个人都分点分吧!
lanlanxiezhqhd 2010-04-29
  • 打赏
  • 举报
回复
这样写会有错误的:SELECT * FROM [Sheet1$] where f4<>NULL 错误:数据导入失败,至少有一个参数没有被指定值。怎么回事?
zhaoleinefu 2010-04-28
  • 打赏
  • 举报
回复
帮忙顶一下喽
chinaboyzyq 2010-04-28
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 lanlanxiezhqhd 的回复:]

我觉得是可以在导入的时候写sql语句,根据where条件后面的筛选的,第四行要怎样代替?像:
Select * From [Sheet1$] where f1<>NULL
如果是判断第四行是否为空怎么写where后面的
[/Quote]

f4<>NULL

f1 f2 f3 ...fN你有多少列N
东方之珠 2010-04-28
  • 打赏
  • 举报
回复
用这个 xlExcel.ActiveSheet.UsedRange.Rows.Count 确定EXCEL表格中数据的行数。
lanlanxiezhqhd 2010-04-28
  • 打赏
  • 举报
回复
我觉得是可以在导入的时候写sql语句,根据where条件后面的筛选的,第四行要怎样代替?像:
Select * From [Sheet1$] where f1<>NULL
如果是判断第四行是否为空怎么写where后面的
tubo_true 2010-04-28
  • 打赏
  • 举报
回复
得到rs后,遍历轻空空格,再附给datagrid
lanlanxiezhqhd 2010-04-28
  • 打赏
  • 举报
回复
excel第一列是可以为空的,应该判断第四列D不为空,第四列是不允许为空的,否则就是整个行都是空的,第四列怎么表示?我对vb了解太少,希望指点指点迷津啊!
chinaboyzyq 2010-04-28
  • 打赏
  • 举报
回复
excel中无标题列(即全部为数据时)如下,如有标题列,标题列名称<>NULL
dataset应该是vb.net的东西,不过出库方法是一样的。

Private Sub Command1_Click()
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
cn.CursorLocation = adUseClient
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\1\123.xls;Extended Properties='Excel 8.0;HDR=no;IMEX=1'"
Set rs = cn.Execute("Select * From [Sheet1$] where f1<>NULL")
Set DataGrid1.DataSource = rs

End Sub
luofenghen 2010-04-28
  • 打赏
  • 举报
回复
很多空行是不是你敲过回车的?
chinaboyzyq 2010-04-28
  • 打赏
  • 举报
回复
select * from [sheet1$] where 第一个字段不<>""

1,502

社区成员

发帖
与我相关
我的任务
社区描述
VB 网络编程
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧