我想知道是否有推荐的方法使用VB.NET将Excel文件(.xlsx)的数据导入Datatable但不知道Excel文件的结构。换句话说,用户将下载没有一致性的Excel文件。标题可以从C1而不是A1开始。任何东西都可以在任何地方,Excel文件不会遵循特定的结构。我在互联网上找到的所有例子似乎都假设Excel文件没有空格,没有合并,所有数据都在行和列之间平均分配。
对于任何可能遍历整个Excel文件的库的建议,获取文本并将其粘贴到Datatable中?
我正在使用SQL,因为它已经过测试,所以事情的一面都可以。
答案 0 :(得分:0)
您不能只这样做吗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