본문 바로가기
IT/Python

[파이썬] 엑셀 틀 고정 / 셀 스타일 변경

by 베베야 2021. 11. 29.
728x90

파이썬 코드을 이용하여 엑셀 틀 고정을 하는 방법에 대해서 알아보자

 

파이썬 설치 및 관련 필수 프로그램 설치는 아래를 참조하세요.

▶파이썬 설치방법 및 필수 프로그램 설치방법 바로가기

 

예제는 첨부한 엑셀 파일을 다운받아서 사용하시면 되겠습니다.

test_style.xlsx
0.01MB


엑셀에서 틀 고정을 하는 방법 다음과 같다.

1. 틀 고정 기준 셀을 선택

2. [보기] - [틀고정] - [틀 고정] 을 클릭

 

파이썬 코드

해당 기능을 파이썬 코드로 사용하면 다음과 같은 문장을 추가해 주면 된다.

ws.freeze_panes = "B2" # B2 기준으로 틀고정이 되서 스크롤 내려도 고정된 열을 볼 수 있다.
#셀 스타일 변경하기
from openpyxl import styles
from openpyxl.styles import Font, Border, Side, PatternFill, Alignment
from openpyxl import load_workbook
wb = load_workbook("test.xlsx") # test.xlsx 파일을 가져온다
ws = wb.active # 활성화

##번호, 영어, 수학
a1 = ws["A1"] #번호
b1 = ws["B1"] #영어
c1 = ws["C1"] #수학



# 90 점 넘는 셀에 대해서 초록색으로 적용
for row in ws.rows:
    for cell in row:

        # 각 셀에 대해서 가운데 정렬 (center, left, right, bottom, top)
        cell.alignment = Alignment(horizontal="center", vertical="center")


        if cell.column == 1: #A 번호열은 제외
            continue
        
        #셀이 정수형 데이터 이고 60점보다 높으면
        if isinstance(cell.value, int) and cell.value >60: 
            cell.fill = PatternFill(fgColor="00FF00", fill_type="solid") #배경색 초록색
            cell.font = Font(color="FF0000") # 폰트 색상 변경

#틀 고정
ws.freeze_panes = "B2" # B2 기준으로 틀고정이 되서 스크롤 내려도 고정된 열을 볼 수 있다.

wb.save("test_style.xlsx")

 

결과 화면

반응형
그리드형

댓글