问题标签 [closedxml]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
18614 浏览

c# - ClosedXML 格式化单元格以包含公式

我希望有人可以帮助我使用 ClosedXML,因为我是 Excel 导出的新手,而且从我对 ClosedXML 的了解来看,文档在某些领域相当有限。

目前我正在将数据放入数据表中,将行格式化为正确的类型并使用正确的布局导出。

当我尝试在每个单元格中导出包含重复公式的一行时,就会出现问题。

我试图将公式简单地添加为一个字符串,然后我可以在导出文件时突出显示和转换,这显然不是理想的。我在 XML 中找到了一个类,XLFormula它完全没有文档,但假设我应该对此做些什么。

目前我有(注释掉的是我使用的方式XLFormula,试图将XLFormula公式作为字符串传递并设置为每单位的总出价):

任何帮助将不胜感激。如果我想用 ClosedXML 做的事情是不可能的,请告诉我,如果你能建议一个替代的 XML 导出器(即使它是付费的),这会有所帮助!

0 投票
1 回答
1314 浏览

c# - 多个数据透视表 ClosedXML

在 Net 4.5.1 上使用最新的 Closed XML (0.76)

通过以下方式创建了一个带有表格的工作表:

这是在一个循环内完成的(即“数据”表中的多个表)。如果在单独的工作表中创建多个数据透视表,则会出现无法打开生成的 Excel 文档的问题。

任何想法为什么以及如何调试?

0 投票
5 回答
17654 浏览

c# - 将excel单元格格式保留为带有“日期类似”数据的文本

这似乎很愚蠢,但是我无法以 的格式获取我的值,以将#/####其写为文字字符串,而不是在 excel 中格式化为日期。

我正在使用 ClosedXML 写入 excel,并使用以下内容:

查看我在单元格中得到的输出 excel 表2/1/1997- 即使我将格式设置为代码中的文本,我在 excel 表中将其作为“日期”得到 - 我通过右键单击单元格检查了这一点,格式单元格,将“日期”视为格式。

如果我将事情更改为:

相反,我得到35462了我的输出。

我只希望我的字面值2/1997显示在工作表上。请告知如何更正。

0 投票
0 回答
9903 浏览

c# - 将excel文件编码和解码为Base64字符串

这是为了一个Windows Console App

我正在将Excel用作报告模板的文件保存为Base64 string. 使用下面的代码将文件编码为base64 string. 然后我将它存储在SQL数据库中NVARCHAR(MAX)

然后我检索这个文件并解码字符串并创建一个ClosedXMLexcel 文件。

问题是最终结果是工作簿丢失了一些格式。主要似乎只影响了边框格式。

我不知道这是否是导致问题的编码、解码或生成新文件ClosedXML的问题。非常感谢任何方向或想法。

0 投票
0 回答
525 浏览

openxml - 使用 ClosedXML 打开 Excel 文件会引发 System.ArgumentNullException

每次我尝试使用以下代码使用 ClosedXML 打开 Excel 文件时

我得到一个 System.ArgumentNullException。但是,我在 Excel 中制作了该文件的副本,我将其重命名并成功打开它。我使用 Open XML Productivity Tool 比较了这两个文件,得到了以下输出。

输出 Open XML 工具

我想知道这些差异是否与我无法使用 ClosedXML 打开 Sample.xlsx 的事实有关。谢谢您的帮助。

0 投票
2 回答
5491 浏览

c# - 如何让 ClosedXML 对公式使用条件格式?

根据文档,您可以使用以下语法向单元格添加条件格式:

所以我尝试了这个:

但是,每当我尝试此操作时,将电子表格加载到 Excel 中,并查看单元格的条件格式,它似乎已将其更改为简单的“单元格值等于”类型,而不是公式类型。所以我看到了这个:

在此处输入图像描述

但我想看到的是:

在此处输入图像描述

我错过了什么!?

0 投票
3 回答
13934 浏览

.net - 从 XLSX 导出大量数据 - OutOfMemoryException

我即将以 Excel OpenXML 格式 (xlsx) 导出大量数据(115.000 行 x 30 列)。我正在使用一些库,如 DocumentFormat.OpenXML、ClosedXML、NPOI。

对于每一个,都会引发 OutOfMemoryException,因为内存中工作表的表示会导致内存呈指数增长。

同样每 1000 行关闭文档文件(并释放内存),下一次加载会导致内存增加。

有没有更高效的方式来导出 xlsx 中的数据而不占用大量内存?

0 投票
1 回答
4941 浏览

c# - 使用 ClosedXML 创建下拉列表

我已经在我的项目中实现了 Excel 模板下载。我用过ClosedXML

我有两张excel表

Sheet1:在这张表中,我有一个名为“类型”的列,我可以在其中创建下拉列表,它是第三列。

表 2:在此表中,我有一个名为“类型”的列,其范围地址是:“B2:B4”,它是第二列。

类型值为:

员工

学生

老师

现在,我想创建一个下拉列表。

我在 ClosedXML 中创建了一个下拉列表,代码是:

我在单元格的右侧得到了下拉符号,但我没有得到其中的值。

0 投票
1 回答
2178 浏览

asp.net - 程序集 'ClosedXML, Version=0.76.0.0, Culture=neutral, PublicKeyToken=fd1eb21b62ae805b' 使用 'DocumentFormat.OpenXml,

我已经使用下面提到的链接将我的 asp.net mvc 4 项目更新为 mvc 5。但之后它在ClosedXMLdll 上给出了以下错误。你能告诉我如何解决这个问题吗?提前致谢。

如何将 ASP.NET MVC 4 和 Web API 项目升级到 ASP.NET MVC 5 和 Web API 2

0 投票
1 回答
2116 浏览

c# - 如何使用其字段名称获取 excel 工作表单元格的值

我想根据我在工作表中指定的标题从 Excel 工作表中提取数据。我正在使用 ClosedXML 并使用单元格 Number.Below 获取数据。下面是我的代码。

这是现在我想根据 excel 表中的字段名称提取数据的代码,如姓名、姓氏、城市 ....等等。如何做到这一点。