EPPlus导致警告“此单元格中的数字被格式化为文本或前面有撇号”

时间:2017-04-24 10:33:31

标签: c# excel epplus

我通过StackOverflow看了很多,但似乎没有什么能解决我的问题。

在我的C#程序中,我有一个字符串字段,有时只是一个数字,有时候是一个单词。此字符串是生成的Excel文档中单元格值的来源。

当字符串包含单词时,它工作正常,当它包含说“2”时,我收到错误。

if else

关于SO的大多数答案都依赖于将单元格作为一个数字来处理它,但是地雷有时只是一个数字,我不希望Excel中的列包含逻辑上相同的单元格的不同格式

我尝试使用“@”格式将其明确地视为文本字段,但这也不起作用。

The number in this cell is formatted as text or preceded by an apostrophe

有什么想法吗?

更新

当我在Excel中键入2时,它将其视为数字。如果我手动将格式更改为文本,它可以正常工作,没有任何错误。我不确定当我以编程方式输入“2”并使用“@”格式时,它不会做同样的事情......

更新2:

我正在使用的代码当它不是字符串时工作正常。

excelRange.Style.Numberformat.Format = "@";

1 个答案:

答案 0 :(得分:0)

我收到错误 - 除了这不是错误,它是一个警告“此单元格中的数字被格式化为文本或前面有撇号。”这正是你想要的,为了格式与其他数据的一致性。

可以在Excel选项(see)中关闭错误消息。