3

Rails で Axlsx gem を使用してセルに新しい行を追加する方法はありますか?

基本的に、値を入力したら Excel で複製すると、Alt + Enter を実行して、セルの新しい行にテキストを追加できます。私は試した

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

しかし、それはエラーをスローします。

4

3 に答える 3

10

私は最近同じ問題を抱えていて、うまくいく解決策を見つけました。

これを使用してセットアップしました:

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 )
于 2016-06-14T12:09:10.040 に答える
3

強制改行の場合は、「\x0A」(段落間の改行) を使用します。

キャリッジ リターンとライン フィードの両方が必要な場合は、「\x0D\x0A」を使用します。

于 2014-09-10T21:55:39.200 に答える
2

「Mac Excel では動作しません」というコメントにコメントできなかったので、これを回答として追加します。package.use_shared_strings = true を使用します。Mac Excel に必要です。

于 2016-04-29T14:48:07.643 に答える