2023. 9. 14. 15:17ㆍDATA PROGRAMMING/PYTHON
파이썬을 통해서 다른 프로그램들을 사용할 수 있을까? 마이크로소프트가 개발한 COM을 활용한다면 가능하다. 이 COM이라는 기능을 활용해 엑셀을 사용해 보려고 한다.
파이썬으로 엑셀 사용하기
import win32com.client
excel = win32com.client.Dispatch("Excel.Application")
excel.Visible = True
먼저 win32com.client 모듈을 불러오고 엑셀을 실행한다 여기서 'excel.Visible = True'까지 해줘야 실제로 우리 눈에 보이는 엑셀 창이 실행된다. 하지만 이를 해주지 않아도 실행은 이미 된 상태이고 우리 눈에 엑셀 창이 보이지 않는 상태일 뿐이다.
wb = excel.Workbooks.Add()
ws = wb.Worksheets("Sheet1")
이렇게 실행된 엑셀에 워크북과 워크시트를 만든다. 워크시트는 우리가 엑셀을 사용할 때 쓰는 엑셀 페이지 한 장(한 페이지)를 생각하면 되고 워크북은 이런 워크시트의 상위개념이다.
그러면 이렇게 엑셀을 통해 워크시트 Sheet1이 잘 만들어진 것을 볼 수 있다.
ws.Cells(1, 1).Value = "hello world"
wb.SaveAs('c:\\Users\\user\\Downloads\\test1.xlsx')
excel.Quit()
위 코드를 작성하면 1행 1열의 셀에 'hello world'라는 문구를 입력하고 두 번째 줄에 입력한 코드를 통해 해당 경로에 test1 엑셀 파일을 저장하고 엑셀 프로그램을 종료한다.
excel = win32com.client.Dispatch("Excel.Application")
excel.Visible = True
wb = excel.Workbooks.Open('c:\\Users\\user\\Downloads\\test1.xlsx')
ws = wb.ActiveSheet
print(ws.Cells(1,1).Value)
excel.Quit()
위 코드를 통해 앞서 작성한 엑셀 파일을 실행하여 1행 1열의 셀에 저장된 값을 읽을 수 있다.
ws.Cells(1,2).Value = "is"
ws.Range("C1").Value = "good"
ws.Range("C1").Interior.ColorIndex = 10
해당 코드를 통해 1행 2열의 값을 'is'로 설정하고, C1 즉 1행 3열의 값을 'good'로 설정하고, 마찬가지로 C1의 셀 색깔을 10(초록색)으로 설정할 수 있다. 각 코드들은 프로그램이나 값에 따라 다르다. 이런 값이나 코드들 구글에 검색하면 모든 값들이 정리되어 있으니 필요할 때마다 꺼내서 사용하면 된다.
'DATA PROGRAMMING > PYTHON' 카테고리의 다른 글
[파이썬] 대신증권 API를 통해 주식투자 하기 (0) | 2023.09.18 |
---|---|
파이썬을 이용한 퀀트 투자 - 1. 시작과 맛보기 (0) | 2023.09.17 |
[PYTHON] 파이썬을 통해 전화번호부 만들기 (0) | 2023.09.13 |
[Python] Class의 정확한 이해와 사용법 (0) | 2023.09.13 |
파이썬 NUMPY 이미지 파일 색깔 수정하 (0) | 2023.08.03 |