我想从12 excel表中获得一个值.有没有办法在没有打开excel表的情况下获得价值?我正在使用vb.net.如果有办法在不打开excel文件的情况下读取值,请发布示例代码.谢谢
如果不打开Excel文件,则无法读取值.但您可以在不必打开Excel的情况下阅读这些值.
如果文件以xml格式保存,那将更容易.如果没有,最简单的方法是仍然使用Excel但使用Office Automation来执行此操作.困难的方法是创建一个excel文件解析器 - 非常开放的xml excel格式(Office 2003之前)很难 - 很难但仍然可能.
但是,如果不打开文件就无法从excel电子表格中读取.
这里有一段代码可以用来从VB.NET打开电子表格,利用Office Automation(它仍然打开文件,依赖于Excel自动化dll,但不需要打开Excel):
免责声明
以下代码不是按原样使用,而只是它是一个示例,以指导读者自己的解决方案,应该进行彻底的测试.
' The code below requires you to add references to Office Interop assemblies
' into your VB.NET project (if you don't know how to do that search Google)
xlApp = New Excel.ApplicationClass
xlWorkBook = xlApp.Workbooks.Open("<YOUR EXCEL SPREADSHEET FILE HERE")
xlWorkSheet = xlWorkBook.Worksheets("sheet1")
range = xlWorkSheet.UsedRange
For rCnt = 1 To range.Rows.Count
For cCnt = 1 To range.Columns.Count
Obj = CType(range.Cells(rCnt, cCnt), Excel.Range)
' Obj.value now contains the value in the cell..
Next
Next
Run Code Online (Sandbox Code Playgroud)