我在一张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个表一样,有没有人知道这个?有什么建议吗?
答案 0 :(得分:6)
这有帮助吗?
// 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下)。你知道吗。