Rails Axlsx新细胞系

时间:2014-09-10 16:00:41

标签: ruby-on-rails axlsx

有没有办法可以使用Rails中的Axlsx gem为单元格添加新行?

因此,一旦输入值,基本上在Excel中复制,您可以执行Alt + Enter将其他文本添加到单元格中的新行。我试过了

sheet.add_row ["Testing cell row 1" + \r\n + "Testing cell row 2"]

但是会引发错误。

3 个答案:

答案 0 :(得分:4)

我最近遇到了同样的问题,我发现了一个有效的解决方案。

我用它来设置:

p = Axlsx::Package.new
p.use_shared_strings = true

此代码添加了wrap样式,使\r换行符正常工作:

wrap = p.workbook.styles.add_style alignment: {wrap_text: true}
sheet.add_row "1\r2\r3", style: wrap

现在单元格中的新行正常工作,输出为:

1
2
3

注意:

  • 单元格中的新行不起作用(@Gary Pinkham)
  • "\x0D\x0A"没有工作(@noel)

答案 1 :(得分:2)

对于强制换行使用" \ x0A" (在段落间断开。)

如果您想要回车和换行,请使用" \ x0D \ x0A"。

答案 2 :(得分:1)

我无法评论“在mac excel中不起作用”的评论,因此将其添加为答案..使用package.use_shared_strings = true ..需要Mac Excel ..