본문 바로가기

코딩/파이썬과 엑셀

openpyxl로 엑셀 다루기 022. column_dimensions와 row_dimensions로 그룹 설정

python : openpyxl : cell group

column_dimensions와 row_dimensions로 그룹 설정

Worksheet 클래스의 column_dimensions 속성을 이용하면 임의 열에 대한 그룹 설정이 가능하다.

 

아래의 코드는 C 열 ~ E 열을 그룹화하는 코드이다.

 

# openpyxl 3.0.7

from openpyxl import Workbook

wb = Workbook()
ws = wb.active

ws.column_dimensions.group('C', 'E')

wb.save('sample.xlsx')

 

 

속성 column_dimensions는 dimensions 파이썬 모듈의 DimensionsHolder 클래스에 대한 객체로 group 메서드의 hidden 파라미터로 그룹화된 셀을 숨길 수 있다.

 

self.column_dimensions = DimensionHolder(worksheet=self,
                                         default_factory=self._add_column)

 

아래의 코드에서 처럼 group 메서드의 전달인자 hidden의 값을 True로 설정하면,

 

# openpyxl 3.0.7

from openpyxl import Workbook

wb = Workbook()
ws = wb.active

ws.column_dimensions.group('C', 'E', hidden=True)

wb.save('sample.xlsx')

 

C 열 ~ E 열은 숨김 처리된다.

 

 

Worksheet 클래스의 row_dimensions 속성을 사용하면 임의 행에 대한 그룹화가 가능하다.

 

아래의 코드는 3 행 ~ 5 행을 그룹화하는 코드이다.

 

# openpyxl 3.0.7

from openpyxl import Workbook

wb = Workbook()
ws = wb.active

ws.row_dimensions.group(3, 5)

wb.save('sample.xlsx')

 

 

속성 row_dimensions 또한 dimensions 파이썬 모듈의 DimensionsHolder 클래스에 대한 객체이다.

 

self.row_dimensions = DimensionHolder(worksheet=self,
                                      default_factory=self._add_row)