【发布时间】:2016-06-16 08:12:18
【问题描述】:
我正在使用 C# 和 Gembox 创建 Excel 电子表格。
我在数据表中从 SQLServer 获取数据,我遇到这样一种情况,如果数据表中的单元格为空,将其放入 excel 对象会导致任何依赖于该 Excel 单元格的公式中断。
例如我明白了:
您可以看到,如果 P4 2015 列有一个空单元格,则 var 列中的公式会中断。如果我在 Excel 中选择单元格并按 Delete,然后输入公式即可。
所以 Gembox 将一些东西放入单元格中,这会破坏公式,但我不确定是什么。我试图检查 Null 值并插入一个空字符串,但这不起作用。
有没有人见过这个,或者知道如何解决它? (注意 - 我需要单元格为空 - 我不想在其中输入 0)。
【问题讨论】:
-
GemBox.Spreadsheet 如果没有任何值,则不会向单元格写入任何内容。不过,您使用的是什么版本的 GemBox.Spreadsheet?还有你有什么公式(我无法用简单的“=A1+B1+C1+D1”公式重现这个)?最后只是为了确认您使用 InsertDataTable 方法将 DataTable 导入 ExcelWorksheet,对吗?
-
@MarioZ Gembox 3.7 for .Net 4.5。该公式很简单,=E60-F60 并且数据与 excel 表不匹配,所以我循环遍历行/列以获得我需要的内容(创建上表是一组非常复杂的 SQL 查询) .我设法通过检查
string.IsNullOrEmpty并专门将null对象插入Excel 单元格来解决。我现在将添加我的答案。
标签: c# gembox-spreadsheet