如何使用 VB.NET 的 OLEDB 连接从 Excel 文件读取特定单元格?
你能给我看一下示例代码吗?
最佳答案
尝试以下 C# 代码:
Dim MyCommand As System.Data.OleDb.OleDbDataAdapter
Dim MyConnection As System.Data.OleDb.OleDbConnection
MyConnection = New System.Data.OleDb.OleDbConnection( _
"provider=Microsoft.Jet.OLEDB.4.0; " & _
"data source=" & ExcelFilePath & "; " & _
"Extended Properties=Excel 8.0")
' Select the data from Sheet1 ([in-house$]) of the workbook.
MyCommand = New System.Data.OleDb.OleDbDataAdapter("select * from [in-house$]", MyConnection)
DS = New System.Data.DataSet
MyCommand.Fill(DS)
Dt = DS.Tables(0)
DataGrid1.DataSource = Dt
对于特定单元格尝试此操作(它将读取单元格 D6)。需要注意的是,它不是使用OLEDB连接,而是直接访问。
Namespace required using Microsoft.Office.Core;
通过将 COM 的引用添加到 Microsoft Office 12.0 对象库来添加它
Dim oApp As New Excel.Application
Dim oWBa As Excel.Workbook = oApp.Workbooks.Open("c:\Test.XLS")
Dim oWS As Excel.Worksheet = DirectCast(oWBa.Worksheets(1),
Excel.Worksheet)
oApp.Visible = False
Dim oRng As Excel.Range
oRng = oWS.Range("D6")
MsgBox(oRng.Value)
关于.net - 如何从 VB.Net 读取 Excel 单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2407293/