Appia의 IT세상

파이썬[Python]Win32com을 이용하여 엑셀[Excel] 차트 이름 작성하기 본문

Python/Python Office 자동화_EXCEL_Outlook

파이썬[Python]Win32com을 이용하여 엑셀[Excel] 차트 이름 작성하기

Appia 2022. 1. 17. 06:11
반응형

파이썬[Python] Win32com을 이용하여 엑셀 차트 이름 작성하기

엑셀[Excel] Win32com을 이용하여 엑셀 차트 이름 작성하기

이번 포스팅은 앞선 포스팅에서 이어서, 한가지 추가할 부분이 있어서 다음과 같이 포스팅을 해보고자 합니다. 엑셀 차트마다 각 제목을 쓸수 있는데 약간의 코드 부분에 대해서 작업이 필요합니다. 그 부분에 대해서 이번 포스팅에서 다루어 보고자 합니다. 

 

이 포스팅은 기본적으로 pywin32기반으로 이루어 집니다. 혹, 관련된 모듈이 설치되지 않았다면, 다음링크를 이용하여 관련된 모듈을 설치해 주시길 바랍니다. 

파이썬[Python] 014 Pywin32 설치

 

파이썬[Python] 014 Pywin32 설치

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

appia.tistory.com

 

먼저 쉽게 생각하시는 분들은 ChartTitle 부분을 이용하여 입력을 하고자 할 것입니다.

import win32com.client


xlApp = win32com.client.Dispatch('Excel.Application')

xlBook = xlApp.Workbooks.Add()
xlApp.visible = True
xlSheet = xlBook.Sheets(1)
xlSheet.Name = "TEXT"


# cell 값 입력

xlSheet.Range('A1').value = 'Acell'
xlSheet.Range('A2').value = 'Bcell'
xlSheet.Range('A3').value = 'Ccell'

xlSheet.Range('B1').value = 1
xlSheet.Range('B2').value = 3
xlSheet.Range('B3').value = 2

vchart = xlApp.Charts.Add()
vseries = vchart.SeriesCollection(1)
vseries.XValues = xlSheet.Range("A1:A3")
vseries.Values = xlSheet.Range("B1:B3")

vchart.ChartTitle.text = "Example"

위와 같은 코드를 실행하면 다음과 같이 에러 메시지가 나타날 것입니다. 

Traceback (most recent call last):
  File "C:/Workspace/BlogPost/Crawling_Info/fsdata/TEST.py", line 27, in <module>
    vchart.ChartTitle.text = "Example"
  File "C:\Program Files\Python37\lib\site-packages\win32com\client\dynamic.py", line 628, in __getattr__
    ret = self._oleobj_.Invoke(retEntry.dispid, 0, invoke_type, 1)
pywintypes.com_error: (-2147352567, '예외가 발생했습니다.', (0, 'S', '이 개체는 제목이 없습니다.', None, 0, -2147024809), None)

그리고, 실제로 차트에는 다음과같이 제목이 없이 나타날 것입니다. 

이 부분을 해결하기 위해서는 반드시 HasTitle 부분이 True로 설정되어 있어야 합니다. 그리고, ChartTitle.Text 부분에 관련된 값을 입력해야 합니다. 

vchart.HasTitle = True
vchart.ChartTitle.text = "Example"

그럼 이 부분을 추가한 코드를 실행하면 다음과 같은 결과가 나타날 것입니다. 

이와 같은 방법으로 엑셀 차트에 제목을 입력할 수 있습니다. 

엑셀[Excel] Win32com을 이용하여 엑셀 차트 그리기

 

엑셀[Excel] Win32com을 이용하여 엑셀 차트 그리기

엑셀[Excel] Win32com을 이용하여 엑셀 차트 그리기 이번 포스팅에서는 실제 파이썬을 이용하여 엑셀로 차트를 그리는 방법에 대해서 이야기를 해보고자 합니다. 이전에는 파이썬 모듈 중에 matpl

appia.tistory.com

이번 포스팅에서는 엑셀[Excel] Win32com을 이용하여 엑셀 차트 이름 작성하기라는 주제로 포스팅을 해봤습니다. 혹 궁금하신 점이나 문의 사항이 있으시면 언제든지 댓글 및 방명록에 글 남겨주시길 바랍니다. 감사합니다. 

반응형
Comments