Appia의 IT세상

엑셀[Excel] Win32com을 이용하여 엑셀 파일 저장하기(PDF,HTML 파일형식 포함) 본문

Python/Python Office 자동화_EXCEL_Outlook

엑셀[Excel] Win32com을 이용하여 엑셀 파일 저장하기(PDF,HTML 파일형식 포함)

Appia 2021. 6. 27. 06:05
반응형

엑셀[Excel] Win32com을 이용하여 엑셀 파일 저장하기(PDF,HTML 파일형식 포함)

엑셀[Excel] Win32com을 이용하여 엑셀 파일 저장하기

파이썬[Python]의 Win32com 모듈을 사용하면서 다양한 기능들을 활용하고 사용할 수 있습니다. 그 중에서 가장 기본적인 것 중 하나가 파일을 저장하는 것이라고 생각합니다. 그래서 이번 포스팅에서는 파일을 저장하는 방법에 대해서 이야기를 해보고자 합니다. 

파이썬[Python] 014 Pywin32 설치

 

파이썬[Python] 014 Pywin32 설치

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

appia.tistory.com

이번 포스팅을 진행하기에 앞서서, win32com모듈을 사용하기 위해서는 사전 설치가 요구됩니다. 상기 링크를 이용하여 pywin32부분을 설치해주시길 바랍니다. 

 

일단, 파일을 저장하기 위해서는 workbook 단계에서 제어를 해야합니다. 가장 쉽게 사용하는 방법은 다음과 같습니다. 

workbook = excel.Workbooks.Add()  # WorkBooks 생성
....

workbook.SaveAs(r"D:\BlogProject\Excel_win32com\test1.xlsx")

위에서 보이는 부분과 같이 SaveAs(파일 경로 및 파일 명)을 이용하여 저장을 할 수 있습니다. 그럼 전체 코드에서 살펴보도록 하겠습니다. 

import win32com.client

excel = win32com.client.Dispatch("Excel.Application")

excel.Visible = True

workbook = excel.Workbooks.Add()  # WorkBooks 생성

sheet = workbook.Worksheets("Sheet1")


sheet.Range("A1").Value = "Rod"
sheet.Range("A2").Value = "Bill"
sheet.Range("A3").Value = "John"
sheet.Range("A4").Value = "Rod"
sheet.Range("A5").Value = "Kelly"
sheet.Range("A6").Value = "Rod"
sheet.Range("A7").Value = "Paddy"
sheet.Range("A8").Value = "Rod"
sheet.Range("A9").Value = "Rod"
sheet.Range("A10").Value = "Rod"


VS=sheet.Columns("A").ColumnDifferences(sheet.Range("A1"))
VS.Select()

workbook.SaveAs(r"D:\BlogProject\Excel_win32com\test1.xlsx")

위의 코드를 실행하고 나서, 해당 폴더에 가보면 다음과 같이 파일이 생성된 것을 알 수 있습니다. 

파일 생성 결과 

그럼 여기에서 다른 형태의 파일로 저장을 해보도록 하겠습니다. 여기에서 인자값으로 FileFormat을 입력할 수 있습니다. 

그럼 관련해서 제공하는 부분들을 살펴보겠습니다. 

Format Value
CSV 6
Excel97-2003 56
XML  46
TXT 20
HTML 44

그럼 위 부분을 활용한 코드 부분을 살펴보면 다음과 같습니다. 물론 PDF로 저장하는 방법은 다른 방식으로 추출해야 합니다. 관련해서는 다음 포스팅에서 다루어 보도록 하겠습니다. 

workbook.SaveAs(r"D:\BlogProject\Excel_win32com\11.CSV",FileFormat = 6)

이와 같은 형태로 FileFormat을 이용하여 다른 파일 형태로 저장이 가능합니다. 이와 같은 형태로 파일을 저장할 수 있습니다. 

 

엑셀[Excel] Win32com 이용하여, 셀 내용 들어쓰기 하기

 

엑셀[Excel] Win32com 이용하여, 셀 내용 들어쓰기 하기

엑셀[Excel] Win32com 이용하여, 셀 내용 들어쓰기 하기 특정 데이터 및 원하는 데이터에 대해서 원하는 형태의 모양을 꾸며야 하는 경우가 있을 수 있습니다. 실제로, 엑셀을 작업하다 보면 관

appia.tistory.com

이번 포스팅에서는 엑셀[Excel] Win32com을 이용하여 엑셀 파일 저장하기라는 주제로 간단히 포스팅을 해봤습니다. 실제 가장 기본적이지만,  잘 다루어지지 않은 것 같습니다. 그래서 이번 포스팅에서 다루어봤습니다. 혹 궁금하신 점이나 문의 사항이 있으시면 언제든지 댓글 및 방명록에 글 남겨주시길 바랍니다. 감사합니다. 

반응형
Comments