通过OpenXML SDK获取一张excel的表(工作部分)

我在一张excel文件中有3个表格,我使用OpenXML SDK读取Excel文件,如下所示:

SpreadSheetDocument document = SpreadSheetDDocument.open(/*read it*/); foreach(Sheet sheet in document.WorkbookPart.Workbook.Sheets) { //I need each table or work part of sheet here } 

所以,如你所见,我可以得到每一张Excel,但是我怎样才能得到每张工作表中的工作部分,就像我的3张表一样,我可以在这些表上迭代,是否有人知道这一点? 有什么build议?

这有帮助吗?

 // true for editable using (SpreadsheetDocument xl = SpreadsheetDocument.Open("yourfile.xlsx", true)) { foreach (WorksheetPart wsp in xl.WorkbookPart.WorksheetParts) { foreach (TableDefinitionPart tdp in wsp.TableDefinitionParts) { // for example // tdp.Table.AutoFilter = new AutoFilter() { Reference = "B2:D3" }; } } } 

请注意,实际的单元格数据不在Table对象中,而在SheetData中(在WorksheetPart的Worksheet下)。 就这样你知道。