将小计添加到电子表格中的数据

发布于 2024-07-23 01:37:31 字数 436 浏览 6 评论 0原文

我正在使用 OpenXML Sdk v2 ctp 进行一些服务器端 Excel 输出。 这里有人有使用此功能的经验吗 - 具体来说:

有没有办法使用 SDK 将小计添加到电子表格中的数据? 或者我是否需要手动迭代添加 OutlineLevel 属性的数据?

rows.Add(new Row(cells.ToArray()) { 
    RowIndex = (UInt32Value)Convert.ToUInt32(idx), 
    Spans = new ListValue<StringValue>() { InnerText = "1:2" }, 
    OutlineLevel = (ByteValue)groupLevelCount 
});

如果我必须手动执行此操作,这将是一个真正的 PITA,因为我需要进行多级分组和排序

I'm doing some server side excel output using the OpenXML Sdk v2 ctp. Has anyone here had any experience using this - mpre specifically:

Is there a way to add subtotals to data in a spreadsheet using the SDK? or do i need to manually iterate over the data adding the OutlineLevel property?

rows.Add(new Row(cells.ToArray()) { 
    RowIndex = (UInt32Value)Convert.ToUInt32(idx), 
    Spans = new ListValue<StringValue>() { InnerText = "1:2" }, 
    OutlineLevel = (ByteValue)groupLevelCount 
});

this would be a real PITA if I have to do it manually as there I need to do multi level grouping and sorting

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

梦与时光遇 2024-07-30 01:37:31

您是否尝试过使用SDK中包含的文档DocumentReflector? DocumentReflector 工具可以加载 OpenXML 文档并对用于使用 SDK 生成该文档的代码进行逆向工程。 换句话说,它从 xlsx 文件生成 C# 代码。

DocumentReflector 工具位于 Open XML Format SDK 2.0 安装文件夹下的 Tools 文件夹中。

也许它可以帮助解决您的问题。

Have you tried to use the document DocumentReflector included in the SDK? DocumentReflector tool can load an OpenXML document and reverse engineer the code for generating that document with the SDK. In other words, it generates C# code from an xlsx file.

The DocumentReflector tool is located in the Tools folder under the Open XML Format SDK 2.0 installation folder.

Maybe it can help to fix your issue.

两相知 2024-07-30 01:37:31

最简洁的答案是不。 OpenXML SDK 使您可以完全访问 XLSX 文件。 您可以添加、删除和/或更改工作簿中的元素。 但这就是全部 - 对元素的低级访问。 它不具有任何类型的处理功能。

The short answer is no. The OpenXML SDK gives you full access to the XLSX file. You can add, remove, and/or change elements in the workbook. But that's all it is - low level access to the elements. It does not have any kind of processing functionality.

你穿错了嫁妆 2024-07-30 01:37:31

如果您有覆盖工作簿中单元格范围的宏或公式,则可以将其设置为在打开电子表格时执行:

请参阅 OpenXmlSdk:制作Excel重新计算公式。

spreadSheet.WorkbookPart.Workbook.CalculationProperties.ForceFullCalculation = true;
spreadSheet.WorkbookPart.Workbook.CalculationProperties.FullCalculationOnLoad = true; 

If you have a macro or formula covering the cell-range in the workbook, you can set it to execute when the spreadsheet is opened:

See OpenXmlSdk: make Excel Recalculate formula.

spreadSheet.WorkbookPart.Workbook.CalculationProperties.ForceFullCalculation = true;
spreadSheet.WorkbookPart.Workbook.CalculationProperties.FullCalculationOnLoad = true; 
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文