我正在打开一个 Excel 电子表格并对其进行处理。当我到达包含公式的单元格(在本例中为 LOOKUP)时,有一个异常(exception):Cannot convert Submission!G6's value to System.String
这发生在这行代码中:
var values = row.Cells(1, lastColumnNumber)
.Select(x => x.GetString())
.ToArray();
这里还有一个 Github 问题 https://github.com/ClosedXML/ClosedXML/issues/1217如何从单元格中获取计算出的“值”?
最佳答案
如前所述,这实际上是 ClosedXML 的一个问题。
但!有一个解决方法。您可以拨打CachedValue
而不是 Value
.
这是代码,已修复:
var values = row.Cells(1, lastColumnNumber)
.Select(x => x.CachedValue?.ToString())
.ToArray();
来自 documentation, CachedValue保存计算/公式的结果。
关于c# - 使用 Excel 公式的 ClosedXML GetString 中的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65079249/