C#在导出到Excel时将存储为文本的数字转换为数字

时间:2019-12-12 08:08:51

标签: c# excel visual-studio excel-interop winapp

我将数据从datagrid导出到excel,其中一列带有数字的错误为“数字存储为文本”。我正在尝试使用以下代码将其转换,但无法正常工作。你能建议吗?

问题在于,列标题然后被上移并且数据被破坏了。

  worksheet.Range["E5", "E5"].EntireColumn.TextToColumns();
  worksheet.Columns[5].NumberFormat = "# ##0,00";

Problem shown

1 个答案:

答案 0 :(得分:0)

此代码将以文本格式存储的数字转换为数字格式。如果要沿相反方向使用它,请将fieldinfo设置为{1,2}。

Range rng = Worksheet.Range["A1:A10""];

rng.TextToColumns(rng, XlTextParsingType.xlDelimited, XlTextQualifier.xlTextQualifierDoubleQuote, Tab: true, FieldInfo: new int[] { 1, 1 }, TrailingMinusNumbers: true);