【问题标题】:EPPlus - Exporting string values with leading single quotation markEPPlus - 导出带前导单引号的字符串值
【发布时间】:2017-01-15 22:30:36
【问题描述】:

我正在尝试使用 C# 和 EPPlus 库将数据写入 xlsx 文件。到目前为止工作正常,但是:我写的值都必须以单引号 (') 开头。如果我将那个写到一个单元格(例如“'MyName”),然后在 Excel 中打开 Excel 文件,' 将显示在所有单元格中!通常,当您在 Excel 中编写此前导引号时,它不会显示在单元格中,仅显示在公式中。 就我而言,如果我转到一个单元格,编辑公式并点击“返回”,则正常行为又回来了。但不是在导出之后,当然也不能在所有单元格上点击返回。

有什么想法吗?我用谷歌搜索了很多都没有成功...

WorkSheet.Cells[1, 4].Value = "'nameFirstname";
WorkSheet.Cells[1, 5].Value = "'1";

【问题讨论】:

  • 发布您的代码,以便其他人可以查看。
  • 代码没什么特别的,但我们开始吧:WorkSheet.Cells[1, 4].Value = "'nameFirstname"; WorkSheet.Cells[1, 5].Value = "'1"; 等等 (@Ernie)
  • 谢谢@Ernie,看来我(还)不能更新我的问题......同时,我尝试设置一些不同的字段而不是“值”(例如公式),但没有改变......
  • 为什么需要单引号?没有它们,您的代码应该可以正常工作,包括 1 值将存储为文本。
  • 是的,对,但是:我为其编写 Excel 文件的系统希望有前导 ' - 不要问我为什么,它是一个相当古老的系统。无论如何,我想知道通过 EPPlus 编写 ' 或直接在 Excel 中编写它之间的区别在哪里。当你在公式中写下'时,他们必须在某个地方存储它......奇怪......

标签: c# excel epplus


【解决方案1】:

根据我现在了解的您的 cmets。要包含 Excell 识别的单引号,请设置如下选项:

ws.Cells[1, 4].Value= "namefirstname";  //No single quote needed
ws.Cells[1, 4].Style.QuotePrefix = true;

【讨论】:

  • 哇,酷!非常感谢!!看来我也使用了错误的 EPPlus 版本 4.0.5。带有 QuotePrefix 的部分仅在 4.1 中可用 - 我建议更新。在那之后,它就像一个魅力。再次感谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-04-02
  • 1970-01-01
  • 2011-07-19
  • 2015-07-01
  • 1970-01-01
  • 2017-02-26
相关资源
最近更新 更多