1

我正在尝试DataGridView用 excel 文件中的数据填充(在这种情况下为 grvExcelData)。但我收到以下错误:

“无法创建字段 [Sheet1$] 的子列表”

下面是我试图填充数据网格视图的代码片段。我也在使用 Visual Studio 2010 进行编程

提前感谢您的帮助

Public Sub fillgrid()

    Dim conn1 As String
    conn1 = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & filenamepath & ";Extended Properties=""Excel 12.0;HDR=Yes;IMEX=2"""

    Dim connection As OleDbConnection = New OleDbConnection(conn1)
    Dim da As OleDbDataAdapter = New OleDbDataAdapter("SELECT * FROM [Sheet1$]", connection)
    Dim ds As DataSet = New DataSet()

    Dim emptyfile As String = "The file does not have any records for inserting."
    Dim selectCmd As OleDbCommand = New OleDbCommand()
    selectCmd.Connection = connection

    selectCmd.CommandText = "SELECT * FROM [Sheet1$]"

    If connection.State = ConnectionState.Closed Then
        connection.Open()
    End If

    da.SelectCommand = selectCmd
    Dim dsCounter As Integer = da.Fill(ds, "[Sheet1$]")

    If dsCounter = 0 Then
        MessageBox.Show(emptyfile, "dsCounter")
    End If

    grvExcelData.DataSource = ds
    grvExcelData.DataMember = "Sheet1"
    grvExcelData.SelectionMode = DataGridViewSelectionMode.FullRowSelect

    da.Dispose()

    If connection.State = ConnectionState.Open Then
        connection.Close()
    connection.Dispose()
    End If

End Sub
4

1 回答 1

1

改变

grvExcelData.DataMember = "Sheet1"

grvExcelData.DataMember = "[Sheet1$]"

在此处输入图像描述

于 2013-10-06T10:41:36.667 回答