问题标签 [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 投票
2 回答
5099 浏览

c# - 重命名表 ClosedXML 的标题

我正在创建一个带有工作表和表格的工作簿。之后我想更改每列标题的标题。我已经尝试过不同的方法,但是当我打开 xmls 文件时,excel 会显示一条错误消息(按下修复文件后它会打开)。也许有人可以给出提示。这是一个示例,其中我生成了 2 个文件,一个打开,另一个有问题。我正在使用最新版本的库:

0 投票
1 回答
251 浏览

c# - 使用 NumberFormat 设置 MS Excel 单元格的 FillColor

我需要根据某个阈值将 Excel 单元格的填充颜色(背景)设置为红色或绿色。我已经使用Style.Fill.BackgroundColorStyle.Font.FontColor属性有条件地填充背景颜色和字体颜色,但后来发现NumberFormat也可以用于有条件地设置字体颜色,如下所示:

有什么方法可以通过使用NumberFormat单元格的属性来设置填充颜色,以便我可以检查 MS Excel 本身的条件?

0 投票
1 回答
2820 浏览

c# - 无法使用 ClosedXML 获取格式数据单元格

我在让 Excel 使用 closedxml 格式化单元格时遇到问题。

我的 Excel 单元格被格式化为短日期,但是当我检查数据类型时,它给了我字符串而不是日期(或日期时间)。

我试图以这种方式获取格式类型:

item.Cell(y)给我字符串而不是日期时间。

为什么我的单元格不是 DateTime 类型?如何将其格式化为短日期?

0 投票
1 回答
1138 浏览

.net - 如何使用 .net 将复选框添加到 Excel 电子表格?

我对此进行了仔细研究,但尚未找到答案。

我收到了一项任务,要求我将一些表格数据导出到 .net 中的 Excel。我惊喜地发现“ClosedXML”库可以相对轻松地完成我想要的大部分工作。但是,当我将我的工作发送给我的客户时,他说他希望每行数据旁边都有一个复选框。这个想法是,用户可以选中和取消选中这些框,将文件上传到 Web 服务器,然后让 Web 服务器根据选中的框对数据库进行更改。

不幸的是,我在 ClosedXML 中找不到对复选框的任何引用,并且我在某处的讨论中看到至少一条评论(没有任何进一步解释)说 ClosedXML 不做复选框。

我尝试创建一个 Excel 电子表格,除了一个复选框之外什么都没有。我尝试浏览 OpenXML 对象模型,发现复选框似乎有以下引用:

document.WorkbookPart.WorksheetParts.Single().ControlPropertiesParts.Single().FormControlProperties

是的,所有这些都是为了找到一个复选框,更不用说为每一行添加一个!

如果我有在 Excel 中写入数据行的代码,如何在行中添加复选框?如果我必须使用不同的库,那没关系。

更新:正如@Mike 建议的那样,很容易将其设置为下拉菜单,用户可以使用数据验证从两个不同的选项中进行选择。代码如下所示:

0 投票
2 回答
4490 浏览

c# - ClosedXML System.Exception:语法错误

我正在使用 ClosedXML 从用户提供的输入计算 excel 表中的值,并且在包含以下公式的单元格上出现错误

IF(C2=1,VLOOKUP(D7,A15:D28,4),(IF(C2=2,VLOOKUP(D7,A33:D46,4),VLOOKUP(D7,F15:I28,4))))

在线的:

你能帮我找出这里出了什么问题吗?

提前致谢

以下是堆栈跟踪堆栈跟踪:

0 投票
4 回答
11948 浏览

c# - 我可以通过 ClosedXML 将 EXCEL 工作表保存为 CSV 吗?

是否可以通过 ClosedXML 将工作簿的工作表保存为 CSV?

例如:

如何将其另存为 CSV?

0 投票
1 回答
291 浏览

excel - 通过它的代号获取工作表

每个 Excel 工作表都有一个 SheetName(向用户显示的名称)和一个 Codename(用户不可见的内部不可变名称),见下图。我需要通过它的代号而不是通过它的 SheetName 来获取工作表。原因是如果用户更改了 SheetName,我的实际代码将不再工作。

只要 suer 不会将 SheetName "Sales" 更改为其他内容,这将起作用:

我需要假设函数WorksheetByCodeName,所以我可以写这个(如果用户将 SheetName 从“Sales”更改为其他内容,这也可以工作:

此图像仅用于说明。这个问题与VBA无关。

在此处输入图像描述

有关工作表代号的更多信息

0 投票
0 回答
646 浏览

c# - 尝试从 ssrs 下载 excel 文件并使用 ClosedXML 进行修改,出现异常

尝试从 ssrs 下载 excel 文件并使用 ClosedXML 进行修改,出现异常。以下是我的代码,在exlWorkBook = new XLWorkbook(FilePath);

下面是堆栈跟踪

0 投票
1 回答
2425 浏览

c# - ClosedXML 将列标题导出到 excel [C#]

我有一个使用 CloedXML 将 datagridview 导出到 excel 的功能。一切正常,但是:

我使用从 datagridview 添加列到数据表

这使用 column.Name,它是我的 dgv 中的设计(名称)。我想添加 column.HeaderText。当我使用

它成功添加了列标题,但导出无法正常工作。它只导出没有特殊字符甚至空白字符的列。(“名称”列已导出,但“IUPAC 名称”或“Čas”不是,...)。重命名不是一种选择。

这是导出函数中负责写入单元格的部分。提醒一下:当我使用 column.Name 时,它​​可以 100% 正常工作。

0 投票
1 回答
2939 浏览

c# - “指定的包无效,缺少主要部分。” 在封闭的 XML 中

我正在使用封闭的 XML来生成 excel 模板。在生成的excel中填写数据后,我正在尝试使用数据导入excel。它返回错误“指定的包无效。缺少主要部分。” . 我正在使用 XLSX 文件。

使用生成的 excel 模板创建 XLWOrkbook 对象时会引发错误。

请提供解决方案,

提前致谢...