1

IErrorInfo.GetDescription failed with E_FAIL(0x80004005)以下のコードを実行すると、 への呼び出しでエラーが発生することがありますexcelFile.WorksheetNoHeader(0)

Excelファイルに依存していないようです.1つのファイルは一度は読めて、次は読めません。

何が原因でしょうか?

    Public Overrides Function GetImportDataAsDataTable() As DataTable
        Dim dataTable = New DataTable
        dataTable.BeginLoadData()
        Try
            Dim excelFile = New ExcelQueryFactory(FileFullPath)
            For Each importDataRow In excelFile.WorksheetNoHeader(0)
                If dataTable.Columns.Count = 0 Then
                    For i = 1 To importDataRow.Count
                        dataTable.Columns.Add(New DataColumn())
                    Next
                End If
                Dim dataRow = dataTable.NewRow
                dataRow.ItemArray = importDataRow.ToArray
                dataTable.Rows.Add(dataRow)
            Next
        Finally
            dataTable.EndLoadData()
        End Try
        Return dataTable
    End Function
4

1 に答える 1

1

OleDb エラーです。

予約済みの SQL ワードが使用されたようです。詳細については、この投稿を確認してください: http://forums.asp.net/t/1225443.aspx/1

于 2012-06-29T14:12:38.897 に答える