2

我正在使用 OpenXML Sdk v2 ctp 做一些服务器端的 excel 输出。这里有没有人有使用这个的经验 - 特别是mpre:

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

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

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

4

3 回答 3

3

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

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

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

于 2009-05-27T14:10:12.020 回答
1

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

于 2011-09-09T15:16:29.273 回答
0

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

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

spreadSheet.WorkbookPart.Workbook.CalculationProperties.ForceFullCalculation = true;
spreadSheet.WorkbookPart.Workbook.CalculationProperties.FullCalculationOnLoad = true; 
于 2011-12-08T14:06:19.873 回答