我将使用的高级方法如下:
1) 定义您的供应商对象
2)为数据表的每一行创建一个供应商对象并将其添加到集合中,例如供应商对象列表
完成此操作后,您可以轻松地遍历您的供应商对象集合来做任何您喜欢的事情。
详细做法:
1)定义您的供应商对象:
Public Class Supplier
Public property SupplierID as integer
Public Property SupplierName as string
Public Property USsupplierCategory as string
Public property USsuppliercategorycode as integer
Public property UKSupplierCategory as string
End Class
2)将您的excel对象读入数据表
这有点棘手。正如 Tim 所说,将您的 excel 文件保存为 csv 然后读取它们更容易。这是因为在 csv 中易于读取,但在 excel 文件中读取也很复杂。它们可以是 xls 或 xlsx 格式,并决定哪一个可能有问题。我们还可以进入 COM 对象问题等。
如果您要坚持阅读 excel,我建议使用 Linq2Excel,因为该库会为您处理 xls / xlsx 问题。这是我根据您返回供应商对象列表的示例电子表格敲出的一些示例代码:
Imports LinqToExcel
Imports Remotion.Data.Linq
Imports System.Data
Imports System.Linq
Public Class ReadInExcelData
Public Shared Function GetSupplierListFromSupplierExcel() As List(Of Supplier)
Dim excel As ExcelQueryFactory = New ExcelQueryFactory("C:\Users\YourUserName\Desktop\ExampleData.xls")
Dim suppliers = From c In excel.Worksheet
Select c
Dim list As New List(Of Supplier)
For Each supplier In suppliers
list.Add(New Supplier(supplier.Item(0),
supplier.Item(1),
supplier.Item(2),
supplier.Item(3),
supplier.Item(4)))
Next
Return list
End Function
End Class
您可以在此处获取 linqtoexcel 库:http ://code.google.com/p/linqtoexcel/