Appia의 IT세상

파이썬 [Python] win32com 이용하여, 엑셀(Excel) 데이터 입력하기, 한번에 연속된 셀의 동일값 입력하기 본문

Python/Python Office 자동화_EXCEL_Outlook

파이썬 [Python] win32com 이용하여, 엑셀(Excel) 데이터 입력하기, 한번에 연속된 셀의 동일값 입력하기

Appia 2021. 5. 2. 05:32
반응형

파이썬 [Python] win32com 이용하여, 엑셀(Excel) 데이터 입력하기, 한번에 연속된 셀의 동일값 입력하기 

파이썬 [Python] win32com 이용하여, 엑셀(Excel) 데이터 입력하기, 한번에 연속된 셀의 동일값 입력하기 

예전의 win32con을 이용한 엑셀 연결하는 방법에 대해서 포스팅을 한적이 있습니다. 최근 주변 사람이 이 포스팅을 보고, 이전 포스팅의 문제점에 대해서 이야기를 하였습니다. 바로, 이전 포스팅은 기존에 저장된 파일을 바탕으로 작업이 이루어 진다는 것이었습니다. 그래서 처음부터, 시작하여 데이터를 입력하는 방법에 대해서 포스팅을 권장하였고, 관련해서 포스팅을 해보고자 합니다. 

파이썬 [Python] 017 win32com 이용하여 Excel 제어하기

 

파이썬 [Python] 017 win32com 이용하여 Excel 제어하기

앞서 포스팅에서 pywin32를 설치하는 방법에 대해서 살펴 보았습니다. 그럼 이번 포스팅에서는 엑셀을 다루어 보는 방법에 대해서 살펴보고자 합니다. 물론, 많은 분들이 엑셀 파일을 별도로 다루

appia.tistory.com

그래서 이번 포스팅에서는 엑셀을 연결해서 새로운 Workbook을 생성하고, 데이터를 입력하는 방법에 대해서 포스팅을 해보고자 합니다. 그럼 한번 살펴보도록 하겠습니다. 기본적인 부분에 대해서는 상기 링크에도 표시가 되어 있습니다. 

 

일단, 먼저 엑셀을 시작하고, 처음 workbook을 생성하는 방법은 매우 간단합니다. 바로 다음 메소드를 사용하는 것입니다. 

Add()

그럼 관련된 workbook이 생성되고 기본으로 생성된 "Sheet1"을 선택하여 시작합니다. 

 

그럼 여기에서 데이터를 쓰는 두가지 방식에 대해서 이야기를 해보고자 합니다. 

- 한셀에 데이터를 입력

- 연속된 셀에 데이터를 입력 

 

한셀에 데이터 입력

먼저 가장 쉽게 이용할 수 있는 방법은 Range("셀 위치")또는 Cells(Row, Column)을 이용하는 것입니다. 그럼 한 셀을 입력하는 방법에 대해서 다음 코드에서 살펴보겠습니다. 

import win32com.client

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

excel.Visible = True

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

sheet = workbook.Worksheets("Sheet1")

sheet.Range("C1").value = "Appia"  # Range를 이용한 텍스트 입력

sheet.Cells(1,1).Value = "1,1 value" # Cell를 이용한 텍스트 입력 (row, colum) 

위에서 보이는 바와 같이 Range()의 경우는 셀위치를 텍스트로 입력해줘야 합니다. Cells()의 경우에는 Row, Column을 각 숫자로 명시해줘야 합니다. 

한 셀의 데이터 값 입력 

연속된 셀에 데이터 입력 

그럼 위에서와 달리 연속된 범위에서의 데이터를 입력하는 방법은 다음과 같습니다. 

Range("시작범위:종료범위").Value = "원하시는 데이터"

그럼 위의 방식을 토대로 다음 코드를 살펴보겠습니다. 

import win32com.client

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

excel.Visible = True

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

sheet = workbook.Worksheets("Sheet1")

sheet.Range("A1:C3").value = "Appia"  # Range를 이용한 텍스트 입력

sheet.Cells(4,4).Value = "1,1 value" # Cell를 이용한 텍스트 입력 (row, colum)

Range(A1:A3)에 Appia라는 텍스트가 입력되게 코드를 구현해봤습니다. 다음 결과를 보시겠습니다. 

특정 범위의 데이터 입력

위와 같이 범위에 동일한 값이 나오는 것을 확인할 수 있습니다. 이와 같은 방식으로 한셀 또는 여러셀의 데이터를 입력할 수 있습니다. 

 

파이썬[Python] 014 Pywin32 설치

 

파이썬[Python] 014 Pywin32 설치

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

appia.tistory.com

이번 포스팅에서는 파이썬 [Python] win32com 이용하여, 엑셀(Excel) 데이터 입력하기, 한번에 연속된 셀의 동일값 입력하기라는 주제로 포스팅을 해봤습니다. 이 부분을 잘 활용하시면 보다 쉬운 텍스트 입력을 하실 수 있습니다. 혹 궁금하신 점이나 문의 사항이 있으시면 언제든지 댓글 및 방명록에 글 남겨주시길 바랍니다. 

반응형
Comments