파이썬 코드로 셀의 값을 변경하는 방법
이번 수업에서는 openpyxl
을 활용해 다양한 방식으로 셀 값을 수정하고, 셀 서식을 변경하는 방법을 알아보겠습니다.
시트 내 특정 셀의 값을 수정하는 방법
셀의 값을 수정할 때는 새로운 입력값을 할당하면 됩니다.
예를 들어, B1 셀의 값을 100으로 변경하려면 다음과 같이 하면 됩니다.
B1셀의 값을 수정하기
ws['B1'] = 100
또는 이전 수업에서 소개한 cell
메서드를 활용해 ws.cell(row=행번호, column=열번호)
를 사용할 수 있습니다.
특정 패턴에 따라 여러 셀 한 번에 수정하기
여러 셀에 특정 패턴에 따라 데이터를 입력해야 하는 경우, 아래와 같이 반복문을 활용할 수 있습니다.
여러 셀 한 번에 수정하기
# B열에 1부터 10까지의 값 입력 for i in range(1, 11): ws[f'B{i}'] = str(i * 100) + 'km'
이 예시에서는 B1부터 B10까지의 셀에 100부터 1000까지의 값과 'km'을 붙여 입력합니다.
또는 아래와 같이 1번째 행의 1열부터 10열까지의 셀에 1부터 10까지의 값을 입력할 수도 있습니다.
여러 셀 한 번에 수정하기
# 1행에 1부터 10까지의 값 입력 for i in range(1, 11): ws.cell(row=1, column=i, value=str(i) + "번째")
이를 응용하면 행과 열 모두에 패턴화된 데이터를 자동으로 입력할 수 있습니다.
여러 셀 한 번에 수정하기
# 2중 for 반복문으로 1부터 100까지 입력 (5열x20행) for i in range(1, 21): for j in range(1, 6): ws.cell(row=i, column=j, value=(i - 1) * 5 + j)
조건에 따라 셀 데이터 수정하기
조건문을 활용하면 특정 조건에 따라 셀 데이터를 수정할 수 있습니다.
아래 코드는 값이 5보다 큰 셀의 값을 'Large'로 변경하고, 그렇지 않은 경우 'Small'로 변경합니다.
조건에 따라 셀 데이터 수정하기
# 값이 5보다 큰 셀의 값을 'Large'로 변경 for i in range(1, 11): if ws[f'B{i}'].value > 5: ws[f'B{i}'] = 'Large' else: ws[f'B{i}'] = 'Small' # 수정된 내용 저장 wb.save('output_file.xlsx')
Mission
0 / 1
openpyxl을 사용해 Excel 파일을 수정할 때, 특정 조건에 따라 셀 데이터를 변경하는 것은 불가능하다.
O
X
가이드라인
AI 튜터
배포
디자인
업로드
수업 노트
즐겨찾기
도움말
코드 에디터
코드 실행
코드 생성
실행 결과
결과물
문서가 비어 있습니다.
코드를 실행해보세요.