파이썬의 win32com 라이브러리로 엑셀의 시트 이름을 바꿔 보도록 하겠습니다.
우선 엑셀 VBA에서는 아래와 같이 바꿀 수 있습니다.
Sub sbTest()
Sheets("Sheet1").Name = "바뀐시트이름"
End Sub
역시 VBA는 간단하죠? 참으로 제가 좋아하는 컴퓨터 언어입니다. 어떤 언어가 이보다 더 쉬울 수 있을까요?
이번에는 파이썬으로 바꿔 보도록 하겠습니다.
import win32com.client
xl = win32com.client.Dispatch("Excel.Application")
xl.Visible = True
file = 'C:\\Users\\fibt5\\Desktop\\test.xlsx'
wb = xl.Workbooks.Open(file)
wb.Worksheets('Sheet1').name = '바뀐시트이름'
1. win32com 모듈에서 client 파일을 가져옵니다.
2. Dispatch 함수를 이용해서 Excel의 Application을 xl로 바인딩 합니다.
3. 엑셀이 수정되는 모습을 보기 위해서 Visible을 True로 설정합니다.
4. 파일경로를 설정하고 open함수로 엑셀파일을 열어서 wb 변수에 바인딩합니다.
5. sheet이름을 변경합니다.
주요 코드는 VBA와 거의 비슷합니다.
혹시 Worksheets를 VBA처럼 Sheets로 사용해도 작동이 될까요?
제대로 작동이 되네요. win32com은 VBA 코드를 그대로 사용할 수 있나봅니다. 재미있네요.
728x90
반응형
'파이썬(Python) > 파이썬으로 엑셀 제어하기' 카테고리의 다른 글
파이썬 win32com으로 엑셀 여는 법, 음영 넣는 법, 닫는 법 (2) | 2024.01.11 |
---|---|
Python - openpyxl 을 사용 중 값이 아닌 수식을 가져올때 해결방법 (2) | 2021.10.30 |
Python(파이썬) openpyxl - 엑셀 스타일 지우기(주의) (0) | 2021.05.06 |
Python(파이썬) openpyxl - 엑셀 글자정렬(Text Align) (0) | 2021.05.05 |
Python(파이썬) openpyxl - 글자(Font) 크기, 색깔, 스타일 지정하는 방 (0) | 2021.05.02 |
댓글