2017-02-14 10 views
1

私はopenpyxlを使用してXLSXに書き出しているPandasデータフレームを持っています。スプレッドシート内の多くのセルには長い文章が含まれており、シートのすべてのコンテンツ(つまりすべてのセル)に「wrap_text」を設定したいと考えています。openpyxlを使用してすべてのセルに 'wrap_text'を適用します。

これを行う方法はありますか?私はopenpyxlが 'wrap_text'の 'Alignment'オプションを持っているのを見ましたが、これをすべてのセルに適用する方法はわかりません。

編集:フィードバックに

おかげで、次は、トリックを行います。注 - スタイルが不変であるためコピーします。パイソンでテスト

for row in ws.iter_rows(): 
    for cell in row:  
     cell.alignment = cell.alignment.copy(wrapText=True) 
+0

関連するすべてのセルにフォーマットを適用する必要があります。 –

答えて

1

、あなたはあなたの細胞を反復処理、アイデアだろうその形式を適用することです。

ここ
for row in ws.iter_rows(): 
    for cell in row: 
     cell.style.alignment.wrap_text=True 

かなりの量が、詳細はラップテキストスタイルを使用する方法にもあります Writing multi-line strings into cells using openpyxl

は、この情報がお役に立てば幸いです。

1

反復し、全てのセル

for rows in ws.iter_rows(min_row=1, min_col=1): 
    for cell in rows: 
     print('cell %s %s' % (cell.coordinate,cell.value)) 

*:3.4.2 - openpyxl:おそらく* 2.4.1

関連する問題