excel导入的问题:
比如说,第一次导入的时候有15条记录,第二次导入只有10记录,但导入的时候还是认为是15条记录,不知道是什么原因?

解决方案 »

  1.   

    Dim strConnUpload As String = " Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = " & FPath & ";Extended Properties=Excel 8.0"
                connUpload = New System.Data.OleDb.OleDbConnection(strConnUpload)
                connUpload.Open()            Dim strSQL As String = "SELECT * FROM [Sheet1$]"
                Dim daUpload As System.Data.OleDb.OleDbDataAdapter = New System.Data.OleDb.OleDbDataAdapter(strSQL, connUpload)Dim com As New System.Data.OleDb.OleDbCommand(strSQL, connUpload)dsUpload = New DataSet
    dsUpload.Clear()
    daUpload.Fill(dsUpload, "(Sheet1$)")showMsg(dsUpload.Tables("(Sheet1$)").Rows.Count)
    ===========================
    这是导入的代码
      

  2.   

    先导到dataset中,再加到数据库,但是第一次是15条记录导入成功后,再导入时dsUpload.Tables("(Sheet1$)").Rows.Count也是等于15,真是不得其解??
      

  3.   

    你的第二次10条,是删除的行,还是清空的单元格内的数据?
    这两种方式好像不一样如果你没有数据的行有设置格式,可能也会出问题,你可以在EXCEL中加一个列,比如一列数字,在处理DATASET判断该列必须不能为空,否则不导入
      

  4.   

    第二次导入的时候你换一个datatable试试看。
      

  5.   

    找到为什么第二次导入时也显示15条记录的原因了,原来是第二次导入的excel表原来也是15条记录的,后来只是将后面的5条记录按delete键删除单元格的文字信息而已,所以程序就认为那5条记录还存在,有没有办法让程序只获取有文字信息的行记录呢?
      

  6.   

    null與""有區別的原因
    excel表如果不輸入是null。輸入後刪除是""
    所以導入時對加個判斷語句就行了。如果是""就不要錄入。
      

  7.   

    younglady() :那excel的查询SQL语句该怎样写呢?
      

  8.   

    excel表下面有sheet1\sheet2之類的東東,也可以自已命名。
    查詢時和數據庫一樣的。select * from [sheet1$]連接語句要寫一下,給個例子"Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + filepath + ";" +"Extended Properties='Excel 8.0';";