c# - 通过 OpenXML SDK 获取 Excel 工作表的表(工作部分)

标签 c# excel c#-4.0 openxml openxml-sdk

我的一张 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 个表,我应该可以迭代这些表,有人知道这一点吗?有什么建议吗?

最佳答案

这有帮助吗?

// 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下)。只是想让你知道。

关于c# - 通过 OpenXML SDK 获取 Excel 工作表的表(工作部分),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14453691/

相关文章:

c# - LINQ to 对象基础

c# - 代码隐藏的样式表问题

.net - 将 System.Data.DataSet 导入 Excel 的最简单方法是什么?

xaml - 允许用户在Windows 8应用程序中使用RichEditBox中的选项卡吗?

c# - .NET 4.0 比早期版本慢,这是真的吗?

c# - 使用 AWS Elasticache 和 Enyim memcached 客户端时 Memcache 过期时间为 1 小时

c# - 如何查看程序集动态加载的代码?

c# - 通过服务器 : Wrong path to excel file? 上的代码运行宏

xml - 插入选项卡的控件名称

c# - 在构造函数中的 Expression<Func<MyType, TOrderBy>> 中使用泛型