2017-02-14 164 views
1

我有一個使用openpyxl寫入到XLSX的Pandas數據框。電子表格中的很多單元格都包含長句子,我想在表格的所有內容(即每個單元格)上設置'wrap_text'。將'wrap_text'應用到所有使用openpyxl的單元格

有沒有辦法做到這一點?我已經看到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

迭代都與Python測試的細胞

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 *

相關問題