Appia의 IT세상

파이썬[Python] Win32com을 이용하여 엑셀 시트 복사하기 본문

Python/Python Office 자동화_EXCEL_Outlook

파이썬[Python] Win32com을 이용하여 엑셀 시트 복사하기

Appia 2023. 12. 18. 07:29
반응형

파이썬[Python] Win32com을 이용하여 엑셀 시트 복사하기

파이썬[Python] Win32com을 이용하여 엑셀 시트 복사하기

 

앞선, 포스팅에서 엑셀 시트를 선택하기 및 시트 추가하기에 대해서 포스팅을 해봤습니다. 물론, 해당 포스팅이 매우 많이 사용이 될 것입니다. 실제, 데이터를 쓰기 위해서는 반드시, 시트를 선택해야합니다. 이번 포스팅에서는 이전 포스팅의 연결고리로, 시트를 복석하는 방법에 대해서 이야기를 해보고자 합니다. 물론, 이 부분 pywin32 기준으로 진행이 됩니다. 해당 모듈이 없을 경우 다음 링크를 통해서 설치를 진행하시길 바랍니다. 

파이썬[Python] 014 Pywin32 설치

 

파이썬[Python] 014 Pywin32 설치

오늘은 pywin32모듈 설치 하는 방법에 대해서 살펴 보겠습니다. 많은 분들이 python을 사용하는 이유 중 하나는 업무에 있어서 반복적이고 지속적인 업무들에 대해 자동화 하기 위해서 사용 하는 분

appia.tistory.com

 

먼저 매우 간단한 방법은 다음과 같습니다.  먼저, 복사할 해당 시트를 선택하시고, 이 부분을 Copy 메소드를 선택하여 통해서, 붙여넣기를 합니다. 

sheet3.Copy(Before=sheet5) // 기본 설정이 Before 입니다. , 선택 셀 앞으로 붙여놓기
// 위의 명령어와 하기 명령어는 동일함
sheet3.Copy(sheet5)

 

그러면 간단한 예제 코드를 생성해보겠습니다. 다음과 같은 코드를 통해서, 시트 복사를 진행해보도록 하겠습니다. 

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'

sheet3.Copy(Before=sheet5)

위의 코드를 실행하면 다음과 같은 결과가 나타납니다. example2 시트앞으로 Copy_sheet라는 시트가 붙여넣어집니다. 

예제 결과

 

물론, 위와 같이 기본설정으로도 가능합니다. 그러면 다르게 특정 시트 다음으로 붙여넣기를 진행해보도록 하겠습니다. 이럴 경우에는 Copy(After = 기준 시트) 명령어를 입력해주면 됩니다. 그러면 코드를 실행해보도록 하겠습니다. 

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'


sheet3.Copy(After=sheet5)

 

위의 코드를 입력하여 실행하면 다음과 같은 결과가 나타나빈다. 

Copy(After = 기준 시트) 예시

 

이와 같은 방법으로 시트를 복사할 수 있습니다. 

 

파이썬[Python] Win32com을 이용하여 엑셀 시트 선택하기 및 시트 추가하기

 

파이썬[Python] Win32com을 이용하여 엑셀 시트 선택하기 및 시트 추가하기

파이썬[Python] Win32com을 이용하여 엑셀 시트 선택하기 및 시트 추가하기 오래만에 excel 자동화에 대한 포스팅을 해보고자 합니다. (실제 강의를 준비하면서, 이전에 포스팅 했던 내용에 대해서 부

appia.tistory.com

 

이번 포스팅에서는 파이썬[Python] Win32com을 이용하여 엑셀 시트 복사하기라는 주제로 포스팅을 진행했습니다. 이 부분은 실제 많이 사용되는 부분이기 때문에 잘 활용할 수 있을 것입니다. 혹 궁금하신 점이나 문의 사항이 있으시면 언제든지 댓글 및 방명록에 글 남겨주시길 바랍니다. 

반응형
Comments