0
我正在工资单上导入员工出勤率。这是我的代码来导入Excel表。如何从使用VB.NET的工作簿中提取Excel工作表名称?
Dim MyConnection As OleDbConnection = Nothing Dim DtSet As System.Data.DataSet = Nothing Dim MyCommand As OleDbDataAdapter = Nothing
With OpenFileDialog1
.Filter = "Excel files(*.xlsx)|*.xlsx|Excel (97-2003) files(*.xls)|*.xls|All files (*.*)|*.*"
.FilterIndex = 1
.Title = "Import data from Excel file"
End With
If OpenFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
Dim fname As String
fname = OpenFileDialog1.FileName
MyConnection = New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0; Data Source='" & fname & " '; " & "Extended Properties=Excel 8.0;")
MyCommand = New OleDbDataAdapter("select * from [Sheet1$]", MyConnection)
MyCommand.TableMappings.Add("Table", "Test")
DtSet = New System.Data.DataSet
MyCommand.Fill(DtSet)
ResultGrid.DataSource = DtSet.Tables(0)
MyConnection.Close()
End If
的问题是我想拥有的表名称动态从"[Sheet1$]"
任何名称。我对这个概念很陌生,因此很难找到相关的解决方案。
在此先感谢。
您可以使用一个文本框,在其中输入表名称,那么你的命令,切换到这样的事情: 'mycommand的=新OleDbDataAdapter(“select * from [”&txtSheetName.text&“$”“,MyConnection)' – HaPhan