2017-02-14 4 views
1

openpyxl을 사용하여 XLSX에 쓰는 팬더 데이터 프레임이 있습니다. 스프레드 시트의 많은 셀에는 긴 문장이 포함되어 있으며 시트의 모든 내용 (즉 모든 셀)에 '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 아마도 *

관련 문제