Python: xlwt モジュールだけで複数行の文字列を Excel セルに書き込む方法はありますか? (openpyxlモジュールの使用を示唆する回答を見ました)
このsheet.write()
メソッドは \n エスケープ シーケンスを無視します。では、xlwtだけでも可能ですか?前もって感謝します。
python-excel Google Groupで答えを見つけました。sheet.write()
オプションの引数を使用してstyle
、セルのワードラップを有効にすると、うまくいきます。最小限の作業例を次に示します。
import xlwt
book = xlwt.Workbook()
sheet = book.add_sheet('Test')
# A1: no style, no wrap, despite newline
sheet.write(0, 0, 'Hello\nWorld')
# B1: with style, there is wrap
style = xlwt.XFStyle()
style.alignment.wrap = 1
sheet.write(0, 1, 'Hello\nWorld', style)
book.save('test.xls')
セル A1HelloWorld
では改行なしで表示されますが、セル B1 ではHello\nWorld
(改行ありで) 表示されます。