Экспорт данных из файла Excel в Datatable - PullRequest
0 голосов
/ 13 июня 2018

Мне было интересно, есть ли рекомендуемый способ импорта данных из файла Excel (.xlsx) в Datatable с использованием VB.NET, но без знания структуры файла Excel.Другими словами, пользователь загрузит файл Excel, в котором нет согласованности.Заголовок может начинаться с C1 вместо A1.Все может быть где угодно, и файл Excel не будет следовать определенной структуре.Все примеры, которые я нашел в Интернете, предполагают, что в файле Excel нет пробелов, слияний и все данные равномерно распределены между строками и столбцами.

Есть ли какие-либо рекомендации для любых возможных библиотек, которые будут проходить по всему файлу Excel, получать текст и вставлять его в таблицу данных?

Я использую SQL, и с этой стороны все в порядке, так какбыл проверен.

1 Ответ

0 голосов
/ 07 июля 2018

Разве вы не можете просто сделать select *, как таковой?

Imports System.Data
Public Class Form1
    Private Sub Button1_Click(ByVal sender As System.Object, _
                ByVal e As System.EventArgs) Handles Button1.Click
        Try
            Dim MyConnection As System.Data.OleDb.OleDbConnection
            Dim DtSet As System.Data.DataSet
            Dim MyCommand As System.Data.OleDb.OleDbDataAdapter
            MyConnection = New System.Data.OleDb.OleDbConnection _
            ("provider=Microsoft.Jet.OLEDB.4.0;"  _
            " Data Source='c:\testfile.xls'; " _
             "Extended Properties=Excel 8.0;")
            MyCommand = New System.Data.OleDb.OleDbDataAdapter _
                ("select * from [Sheet1$]", MyConnection)
            MyCommand.TableMappings.Add("Table", "TestTable")
            DtSet = New System.Data.DataSet
            MyCommand.Fill(DtSet)
            DataGridView1.DataSource = DtSet.Tables(0)
            MyConnection.Close()
        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try
    End Sub
End Class
...