파이썬[Python] Win32com을 이용하여 엑셀 시트 숫자 세기 및 엑셀시트 이름 모두 나열하기
파이썬[Python] Win32com을 이용하여 엑셀 시트 숫자 세기 및 엑셀시트 이름 모두 나열하기
이전 포스팅에서 win32com을 이용하여 엑셀 시트 복사하는 방법에 대해서 이야기를 해봤습니다. 이번 포스팅에서 이 부분과 연관이 있는 부분으로, 시트의 갯수를 세고, 이 부분에 대한 시트이름을 모두 나열하는 방법에 대해서 이야기를 해보고자 합니다. 기본적으로 이번 포스팅은 pywin32모듈을 기본으로 진행합니다. 파이썬 기반으로 해당 모듈을 설치하신 후에 진행 하셔야 합니다.
먼저, 시트의 전체 갯수를 세는 방법에 대해서 이야기를 해보도록 하겠습니다. 다음 예시에서 보이는 바와 같이 workbook을 할당 받은 객체에서 Sheets의 속성을 받아옵니다. 여기에서 할당 받은 변수에 Count 부분을 통해서 해당 시트의 전체 갯수를 받아올 수 있습니다.
excel = win32.Dispatch('Excel.Application')
wb = excel.Workbooks.Add() // Open 명령어로 기존 파일을 열어도 됩니다.
ws = wb.Sheets
print(ws.Count)
그러면 위에서 시트의 갯수를 확인했다면, 이제 각 시트의 이름에 대해서 출력을 해보도록 하겠습니다. 먼저, 위에서와 동일하게 Sheets의 속성을 받아서 이 부분을 for문으로 루프를 타게 합니다. 여기에서 해당 부분에 대해서 Name을 통해서 이름을 확인할 수 있습니다.
excel = win32.Dispatch('Excel.Application')
wb = excel.Workbooks.Add() // Open 명령어로 기존 파일을 열어도 됩니다.
ws = wb.Sheets
for sh in ws:
print(sh.Name)
그러면 위의 부분을 바탕으로 전체 예시 코드 작성하여 진행을 해보도록 하겠습니다. 기본적으로 Workbook을 생성하면 1개의 Sheet가 추가됩니다. 이 부분을 통해서, 몇가지 Sheet을 추가하고 나서, 반복문을 통해서 각 이름을 출력해주도록 하겠습니다.
import win32com.client as win32
# Excel 인스턴스 생성
excel = win32.Dispatch('Excel.Application')
# 워크북 열기
wb = excel.Workbooks.Add()
excel.Visible = True
# 시트 접근
ws = wb.Sheets
sheet3 = wb.Sheets.Add()
sheet3.Name = 'Copy_sheet'
sheet4 = wb.Sheets.Add()
sheet4.Name = 'example1'
sheet5 = wb.Sheets.Add()
sheet5.Name = 'exmaple2'
print(ws.Count)
for sh in ws:
print(sh.Name)
그러면, 위의 결과를 바탕으로 한번 출력을 하면, 다음과 같은 결과가 나타납니다.
이와 같은 방법을 통해서, 시트의 갯수와 시트의 이름을 출력할 수 있습니다.
파이썬[Python] Win32com을 이용하여 엑셀 시트 선택하기 및 시트 추가하기
이번 포스팅에서는 파이썬[Python] Win32com을 이용하여 엑셀 시트 숫자 세기 및 엑셀시트 이름 모두 나열하기라는 주제로 포스팅을 해봤습니다. 이 부분이 실제로 매우 잘 사용되는 부분이기 때문에 작업을 진행하실 때에 매우 많은 도움이 되실 것이라고 생각합니다. 혹 궁금하신 점이나 문의 사항이 있으시면 언제든지 댓글 및 방명록에 글 남겨주시길 바랍니다. 감사합니다. 그리고 제 포스팅이 도움이 되셨다면, 공감 및 댓글 부탁드립니다.