Appia의 IT세상

파이썬 [Python] win32com 이용하여, 엑셀(Excel) 가로 세로 정렬하기 본문

Python/Python 응용

파이썬 [Python] win32com 이용하여, 엑셀(Excel) 가로 세로 정렬하기

Appia 2021. 5. 5. 06:13
반응형

파이썬 [Python] win32com 이용하여, 엑셀(Excel) 가로 세로 정렬하기

파이썬 [Python] win32com 이용하여, 엑셀(Excel) 가로 세로 정렬하기

이전 포스팅에서는 글자의 스타일등에 대해서 포스팅을 한적이 있습니다. 실제, 글자 크기 및 관련된 정렬에 이어서 중요하게 여기게 되는 것이 바로 셀에서의 텍스트 정렬이 아닐까라는 생각을 합니다. 정렬은 크게 두가지 형태로 볼 수 있습니다. 

파이썬[Python] 014 Pywin32 설치

 

파이썬[Python] 014 Pywin32 설치

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

appia.tistory.com

하나는 세로 정렬입니다. 기본으로 가운데 정렬 넓은 높이의 셀 위치에서 텍스트가 가운데로 표시되게 기본 설정이 되어 있습니다. 그런 후에 이 부분을 토대로 위쪽(Top) 아래(Bottom)으로 설정할 수 있습니다. 

 

그리고 다른 하나는 가로 정렬입니다. 쉽게 이야기 하면 이것은 4가지 형태로 볼 수 있습니다. 하나는 타입에 따른 정렬, 왼쪽, 가운데, 오른쪽 정렬과 같이 총 4가지로 형태로 정렬을 살펴볼 수 있습니다. 

 

그럼 코드에서 각각 살펴보겠습니다. 

 

먼저 세로 정렬 입니다. 세로 정렬을 사용하기 위한 속성은 VerticalAlignment입니다. 입력될 수 있는 값은 Enum 형태로 다음과 같은 값을 가집니다. 

VerticalAlignment

1

위쪽(Top)

2

가운데(Center)

3

아래쪽(Bottom)

그럼 전체 코드에서 살펴보겠습니다. 

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 = "위쪽 정렬 "

sheet.Rows(2).RowHeight = 50

sheet.Range("A1").VerticalAlignment  = 1

sheet.Range("A2").value = "가운데 정렬 "


sheet.Rows(3).RowHeight = 50

sheet.Range("A2").VerticalAlignment  = 2

sheet.Range("A3").value = "아래쪽 정렬 "


sheet.Rows(1).RowHeight = 50

sheet.Range("A3").VerticalAlignment  = 3

sheet.Range("A2").Columns.Autofit

위의 코드를 실행하면 다음과 같이 총 가지 정렬에 대해서 각가 살펴볼 수 있습니다. 

세로 정렬 결과 

그럼 이번에는 가로 정렬입니다. 가로 정렬을 사용할 수 있는 속성은 HorizontalAlignment입니다. 여기에서 사용되는 값은 다음과 같습니다. 

HorizontalAlignment

1

데이터 타입에 따른 정렬(숫자는 오른쪽, 문자는 왼쪽)

2

왼쪽 정렬

3

가운데 정렬

4

오른쪽 정렬

그럼 전체 코드를 살펴보겠습니다. 

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 = 100

sheet.Columns(1).ColumnWidth = 100

sheet.Range("A1").HorizontalAlignment  = 1 # 데이터 타입에 따른 정렬

sheet.Range("A2").value = "왼쪽"

sheet.Range("A2").HorizontalAlignment  = 2

sheet.Range("A3").value = "가운데 정렬 "

sheet.Range("A3").HorizontalAlignment  = 3

sheet.Range("A4").value = "오른쪽 정렬"

sheet.Range("A4").HorizontalAlignment  = 4

위의 코드를 실행하면 다음과 같은 결과가 나타납니다. 

가로 정렬 결과 

이와 같이 세로, 가로를 각각 정렬할 수 있습니다. 

파이썬 [Python] win32com 이용하여, 엑셀(Excel) 글꼴, 크기, 스타일 변경하기

이번 포스팅에서는 파이썬 [Python] win32com 이용하여, 엑셀(Excel) 가로 세로 정렬하기라는 주제로 포스팅을 해봤습니다. 이 부분들은 틈틈이 잘 활용될 수 있는 부분입니다. 혹 궁금하신 점이나 문의 사항이 있으시면 언제든지 댓글 및 방명록에 글 남겨주시길 바랍니다. 

반응형
Comments