"AttributeError: 'MergedCell' object attribute 'value' is read-only" 오류 쉽게 해결하기
문제 상황
Python에서 openpyxl
라이브러리를 사용해 Excel 파일을 다루다가 이런 오류를 만난 적 있나요?
AttributeError: 'MergedCell' object attribute 'value' is read-only
이건 병합된 셀에 값을 넣으려 할 때 발생하는 오류임
Merged Cell !!
왜 이런 오류가 날까요?
Excel에서 병합된 셀은 사실 하나의 셀처럼 보이지만, 내부적으로는 여러 개의 셀이 합쳐진 거예요.
그런데 openpyxl
에서는 병합된 셀 중 맨 왼쪽 위 셀만 값을 저장할 수 있어요. 다른 셀에 값을 넣으려고 하면 오류가 나는 거죠.
해결 방법
간단해요! 병합된 셀 중에서 맨 왼쪽 위에 있는 셀에만 값을 넣으면 돼요. 아래 코드로 쉽게 해결할 수 있어요:
from openpyxl import Workbook
wb = Workbook()
ws = wb.active
# 셀 병합하기
ws.merge_cells("A1:C1")
# 병합된 셀의 맨 왼쪽 위 셀에만 값 넣기
ws["A1"] = "병합된 셀 내용"
wb.save("example.xlsx")
추가 팁
- 병합된 셀 해제하기:
ws.unmerge_cells("A1:C1")
를 사용하면 병합이 풀려요. - 문서화 습관: 병합한 셀이 어디인지 적어두면 나중에 코드 관리가 훨씬 쉬워져요.
정리
병합된 셀을 다룰 때는 항상 맨 왼쪽 위 셀에만 값을 넣으면 돼요.
이렇게 하면 오류 없이 Excel 작업을 처리할 수 있을 거임 ㄱㄱ
'파이썬 코딩 기록' 카테고리의 다른 글
[파이썬 에러] ModuleNotFoundError: No module named 'pkg_resources' (0) | 2025.01.16 |
---|---|
[PyQt/Pyside] QLineEdit placeholder text 넣는법 (0) | 2025.01.16 |
[Python] 파이썬 리스트 입력 받기 (예제 코드 포함) (0) | 2024.12.26 |
파이썬 다른 파일 함수 호출하는 방법 (예시 코드 포함, 복붙하셈) (1) | 2024.12.26 |
파이썬 no such file or directory 해결 방법 (복붙하면 바로 해결) (0) | 2024.12.25 |