반응형
소개
xlwings를 사용해 Excel 워크북을 자동화하다가 'KeyError: 'Worksheet name not found'' 오류에 부딪혔다면, 꽤 혼란스러울 수 있습니다. 이 에러는 지정한 워크시트 이름이 정확하지 않거나 해당 이름의 워크시트가 존재하지 않을 때 발생합니다. 오늘은 이 오류의 원인과 해결 방법을 소개하겠습니다.
에러 발생 예시 코드
다음은 'KeyError: 'Worksheet name not found'' 에러가 발생할 수 있는 코드 예시입니다.
import xlwings as xw
# 엑셀 애플리케이션 열기
app = xw.App(visible=True)
# 워크북 열기
workbook = app.books.open('example.xlsx')
# 특정 이름의 워크시트에 접근
sheet = workbook.sheets['NonExistentSheet']
print(sheet.range('A1').value)
에러 해결 방법
1. 워크시트 이름 확인
먼저, 오타가 없는지 확인하고, 지정한 워크시트 이름이 실제로 존재하는지 확인하세요. Excel에서 직접 이름을 복사해 붙여넣는 것도 좋은 방법입니다.
import xlwings as xw
# 엑셀 애플리케이션 열기
app = xw.App(visible=True)
# 워크북 열기
workbook = app.books.open('example.xlsx')
# 실제 존재하는 워크시트 이름 사용
sheet = workbook.sheets['Sheet1'] # 예: 'Sheet1'로 변경
print(sheet.range('A1').value)
2. 사용 가능한 모든 워크시트 나열
워크북 내의 모든 워크시트 이름을 출력하여, 어떤 이름이 유효한지 확인할 수 있습니다. 다음 코드를 통해 유효한 워크시트 목록을 출력해 보세요.
import xlwings as xw
# 엑셀 애플리케이션 열기
app = xw.App(visible=True)
# 워크북 열기
workbook = app.books.open('example.xlsx')
# 모든 워크시트 이름 출력
for sheet in workbook.sheets:
print(sheet.name)
마무리
이번 블로그 글에서는 xlwings에서 발생하는 'KeyError: 'Worksheet name not found'' 오류를 어떻게 해결할 수 있는지 알아보았습니다. 워크시트 이름을 확인하거나, 현재 워크북의 모든 시트 이름을 나열하는 방법으로 이러한 오류를 극복할 수 있습니다. 엑셀 자동화 시에는 항상 정확한 이름을 사용하는 것을 잊지 마세요!
반응형
'Python > xlwings' 카테고리의 다른 글
xlwings ConnectionError: Unable to connect to the Excel application 오류 해결하기 (1) | 2024.12.25 |
---|---|
xlwings ImportError: cannot import name 'Xlwings' 오류 해결하기 (0) | 2024.12.25 |
파이썬 xlwings.cell 함수 활용하기 (0) | 2024.12.25 |
파이썬 xlwings.save_as 함수 활용하기 (0) | 2024.12.25 |
파이썬 xlwings.restart 함수 활용하기 (1) | 2024.12.25 |