python openpyxl - 파이썬으로 엑셀의 열너비, 행높이 변경하기 (여러 행, 열 크기 동시에 조절하기)
본문 바로가기
파이썬(Python)/파이썬으로 엑셀 제어하기

python openpyxl - 파이썬으로 엑셀의 열너비, 행높이 변경하기 (여러 행, 열 크기 동시에 조절하기)

by Squat Lee 2021. 4. 25.

 

VBA처럼 파이썬으로 엑셀의 열너비, 행높이를 조절할 수 있습니다.

 

모듈은 openpyxl 에서 Workbook 이나 load_workbook 중 아무거나 불러오면 됩니다. 

 

저는 임의로 엑셀파일을 만들어서 가져온 다음에 활성화 된 시트를 'ws'라는 변수에 담았습니다.

 

행 높이를 변경하려면 worksheet function에서 'row_dimensions.height'를 쓰면 됩니다.

Column도 비슷한 방법으로 너비를 지정할 수 있습니다.

 

아쉬운 건 VBA에서는 range를 써서 여러 행이나 열의 크기를 변경할 수 있지만, 파이썬에서는 for 문을 써서 변경해야 하네요.

 

행은 이렇게 범위를 설정해서 반복해 주면 됩니다.

 

하지만, 열은 'A', 'B', 'C' 이렇게 되어 있기에 반복문을 쓰기가 곤란합니다.

 

"ws.column_dimensions[2].width" 라고 적으면 에러메세지가 뜹니다.

 

openpyxl.utils 의 get_column_letter를 사용하면 column을 인덱스를 사용해서 활용할 수 있습니다.

 

요론식으로 사용하면, 열 너비도 여러개를 동시에 변경할 수 있습니다.

 

결과는 아래와 같이 에러없이 잘 실행 되었습니다.

 

728x90
반응형

댓글