OleDBAdapter未正确填充数据集

时间:2017-09-27 14:57:17

标签: excel vb.net

我正在导入一个excel文件并用内容填充数据集。这是我写的第一个函数:

Public Function ReadXLFile(ByVal FileName As String) As DataSet
        Dim MyConnection As System.Data.OleDb.OleDbConnection
        Dim Ds As System.Data.DataSet
        Dim MyAdapter As System.Data.OleDb.OleDbDataAdapter
        MyConnection = New System.Data.OleDb.OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & FileName & ";Extended Properties='Excel 8.0;HDR=YES;';")
        MyAdapter = New System.Data.OleDb.OleDbDataAdapter("Select * from [Sheet1$]", MyConnection)
        Ds = New System.Data.DataSet
        MyAdapter.Fill(Ds)
        Return Ds
    End Function 

我面临的问题是,对于某些单元格,数据集不会将值放入,并且它似乎适用于Excel工作表中的某些类型的突出显示。我在excel工作表中有一行突出显示橙色(或某些情况下为红色)。它不会读取第一列。例如,在excel表中它将具有

1234 Bob Jones 450 72

它将读取Bob Jones及其后的所有内容,但是第一个单元格1234,它将无法读取它,并且在数据集中该单元格保留为空白。对于未突出显示的行或未突出显示第一列的行,将完美读取数据。

其他信息: 我上传的文件是.xls文件,Microsoft Excel 97-2003。

1 个答案:

答案 0 :(得分:0)

在此处设置连接字符串中的IMEX会很有帮助。检查Excel reading at YoursAndMyIdeas {发布它作为答案以及正确的答案标记和其他人的利益}