我使用Softartisans OfficeWriter
生成Excel文件。我遇到的问题是,当我将一个空字符串(""
或String.Empty
)分配给单元格时,单元格的值类型将变为Blank
而不是Text
,这正是我想要的。我试过someCell.ValueType
,但它是只读属性,我无法手动将它设置为Text
。如何将Excel单元格的值类型设置为C#中的文本?
任何帮助将不胜感激!
我使用Softartisans OfficeWriter
生成Excel文件。我遇到的问题是,当我将一个空字符串(""
或String.Empty
)分配给单元格时,单元格的值类型将变为Blank
而不是Text
,这正是我想要的。我试过someCell.ValueType
,但它是只读属性,我无法手动将它设置为Text
。如何将Excel单元格的值类型设置为C#中的文本?
任何帮助将不胜感激!
注意:您正在使用哪种文件格式为我SoftArtisans
工作? 在BIFF文件格式(.xls)中,分配给空字符串的单元格在保存文件时将设置为空值,从而导致ValueType返回空白。
在OOXML(.xlsx)中,保存文件时会保留空字符串值,并且ValueType将为分配给空字符串的任何单元格返回Text。 您可以在这篇知识库文章中找到更多信息:http://blog.softartisans.com/2013/12/30/kb-why-do-some-blank-cells-return-different-values-in-ooxml/
是否可以使用.xlsx文件?
可能的解决方法是将单元格值设置为'。
这是Excel单元格包含文本值的标记。
您是否尝试过向字符串添加转义空引号?
someCell.Value = "\"\"";
你是否仅限于这位办公室作家? Closedxml可以轻松完成所有这些工作。 – Saren
@Saran是的,我必须使用Office Writer。 – Isaac
之后你需要怎么处理值类型? –