【问题标题】:C# - Paste multiline cells to excel from a stringC# - 将多行单元格粘贴到字符串中的 excel 中
【发布时间】:2013-10-26 16:17:17
【问题描述】:

我正在尝试使用“\r”将字符串复制到 excel 行以分隔单元格。我只希望 2 个单元格是多行的,但使用“\n”会将文本切换到电子表格中的下一行,而不是在单元格中创建一个新行。 (程序自动将文本复制到剪贴板)

有什么办法可以做到吗?

例如,如果你有一个字符串:

    string s = "cell1 \t cell2 \t cell3 \n stillcell3 \t cell4";

这将导致(单元格(内容)): A1(cell1) A2(cell2) A3(cell3 换行 stillcell3) A4(cell4)

我希望这是有道理的,如果你能帮助我,那就太好了!

解决方案: 确保您已将多行部分包含在 \"\" 中。

【问题讨论】:

  • 您使用什么与 Excel 通信?互操作/COM 对象?

标签: c# excel


【解决方案1】:

试试这个:

String s = "cell1\tcell2\t\"cell3\nstillcell3\"\tcell4\r\n";
Clipboard.SetText(s);

现在转到 Excel 并粘贴

(Control + V)

【讨论】:

  • +1 只是因为我认为匿名 -1 对任何事情都没有好处。但是这个答案根本不值得+1。首先,您甚至不知道 OP 如何连接到 Excel,其次您不能建议手动粘贴;原则上,一切都必须通过代码完成。此外,如果不将给定单元格中的 Wrap Text 属性设置为 true,您将永远不会得到多行。
  • 谢谢,如果答案非常糟糕,请告诉我,我会删除它。用户没有指定它是如何通信的,所以我假设了一些基本的解决方案。
  • 看看其他人告诉你什么:在一个不太受欢迎的问题中第二次投反对票。我已经解释了我在这里看到的错误。在回答之前要做的第一件事是了解问题;你甚至不知道问题所在。而且,如上所述,您的解决方案几乎在任何情况下都不能提供准确的结果:您没有提到包装,您依赖于用户干预(几乎是禁止的)......老实说,我不明白这一点回答,但完全取决于你。
  • 谢谢!没注意到。你是我的英雄:P
  • 有用的问题,有用的答案;谢谢托尼
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-10-08
  • 2019-09-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多