各位大哥大姐们,我遇到一个小麻烦,在网上找了很久也没有个确切的答案,就想问问大家,我用adodb链接excel,读取出excel的数据放在dataset里,把dataset的值直接绑定到窗体上的dataGrid了,但是execel上面有数据,下面有很多空的行,一起读到了dataGrid上了,我想问,怎么把这些空行在程序里去掉?

解决方案 »

  1.   

    select * from [sheet1$] where 第一个字段不<>""
      

  2.   

    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
      

  3.   

    excel第一列是可以为空的,应该判断第四列D不为空,第四列是不允许为空的,否则就是整个行都是空的,第四列怎么表示?我对vb了解太少,希望指点指点迷津啊!
      

  4.   

    得到rs后,遍历轻空空格,再附给datagrid
      

  5.   

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

  6.   

    用这个 xlExcel.ActiveSheet.UsedRange.Rows.Count 确定EXCEL表格中数据的行数。
      

  7.   


    f4<>NULLf1 f2 f3 ...fN你有多少列N
      

  8.   

    这样写会有错误的:SELECT  * FROM [Sheet1$] where f4<>NULL 错误:数据导入失败,至少有一个参数没有被指定值。怎么回事?