일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- python3
- Windows10
- pyqt5
- windows
- 파이썬3
- html
- pythongui
- 파이썬GUI
- 윈도우10
- 윈도우11
- win32com
- Outlook
- VBA
- Android
- python
- 깃
- pandas
- 아웃룩
- office
- matlab
- 오피스
- 파이썬
- 안드로이드
- 문자열
- git
- 엑셀
- Excel
- 파워포인트
- Windows11
- 비주얼베이직
Appia의 IT세상
엑셀[Excel] Win32com 이용하여, 셀 전체 윤곽선 그리기(BorderAround) 본문
엑셀[Excel] Win32com 이용하여, 셀 전체 윤곽선 그리기(BorderAround)
Appia 2021. 5. 27. 06:21엑셀[Excel] Win32com 이용하여, 셀 전체 윤곽선 그리기(BorderAround)
엑셀 작업을 하다보면, 당연히 각 칸에 대한 경계를 그리는 부분에 대해서 중요하게 생각을 합니다. 그래서 이번 포스팅에서는 borderAround함수를 이용하여 셀의 4방향의 윤곽을 나타낼수 있는 윤곽선을 그리는 방법에 대해서 이야기를 해볼까 합니다.
이번 포스팅을 진행하기 앞에서, 관련된 내용은 Pywin32모듈을 바탕으로 진행됩니다. 따라서 관련된 부분에 대해서 다음 링크의 부분을 활용해야 하기 때문에 Pywin32을 설치 해주시길 바랍니다.
먼저 셀의 윤곽선을 그리는 다음과 같은 Method에 대해서 인지하고 있으셔야 합니다.
BorderAround(ColorIndex, LineStyle, Weight) |
참고로 Weight의 경우 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("B2").BorderAround(ColorIndex = 3,Weight = 3,LineStyle = 1)
sheet.Range("B4").BorderAround(ColorIndex = 3,Weight = 3,LineStyle = 2)
sheet.Range("B6").BorderAround(ColorIndex = 3,Weight = 3,LineStyle = 3)
sheet.Range("B8").BorderAround(ColorIndex = 3,Weight = 3,LineStyle = 4)
sheet.Range("B10").BorderAround(ColorIndex = 3,Weight = 3,LineStyle = 5)
sheet.Range("D2").BorderAround(ColorIndex = 1,Weight = 4,LineStyle = 1)
sheet.Range("D4").BorderAround(ColorIndex = 1,Weight = 4,LineStyle = 2)
sheet.Range("D6").BorderAround(ColorIndex = 1,Weight = 4,LineStyle = 3)
sheet.Range("D8").BorderAround(ColorIndex = 1,Weight = 4,LineStyle = 4)
sheet.Range("D10").BorderAround(ColorIndex = 1,Weight = 4,LineStyle = 5)
다음과 같은 결과가 나타나는 것을 알 수 있습니다. 단, Weight의 경우보다, Linestyle 부분에 대해서 각 부분을 바탕으로 확인하시길 바랍니다.
위의 부분에서는 함수들을 보면, 하나의 셀을 Range()로 잡아 놓고 진행을 했습니다. 하지만, 이 부분을 다음과 같이 수정해서 코드를 실행하면 어떻게 될까요?
sheet.Range("B2:B7").BorderAround(ColorIndex = 3,Weight = 3,LineStyle = 1)
그럼 다음과 같이 여러개을 셀을 하나로 보고, 그 네 면을 경계선으로 표시해 줍니다.
이와 같은 형태로 셀의 윤곽선을 그릴 수 있습니다.
엑셀[Excel] Win32com 이용하여, 특정열의 같은 내용끼리 셀 병합하기 (Merge하기) - 엑셀 자동화
이번 포스팅에서는 엑셀[Excel] Win32com 이용하여, 셀 전체 윤곽선 그리기(BorderAround)라는 주제로 포스팅을 해봤습니다. 이 부분이 자주 사용되는 부분입니다. 사용하시는데에 도움이 되시길 바랍니다. 감사합니다.
'Python > Python Office 자동화_EXCEL_Outlook' 카테고리의 다른 글
엑셀[Excel] Win32com을 이용하여 엑셀 파일 저장하기(PDF,HTML 파일형식 포함) (1) | 2021.06.27 |
---|---|
엑셀[Excel] Win32com 이용하여, 셀 내용 들어쓰기 하기 (0) | 2021.05.30 |
파이썬 [Python] win32com 이용하여, 아웃룩(Outlook) 연락처 정보의 메일 이름, 주소 출력하기 (0) | 2021.05.24 |
파이썬 [Python] win32com 이용하여, 아웃룩(Outlook) 첨부파일 첨부하여 메일 보내기 (0) | 2021.05.22 |
엑셀[Excel] Win32com 이용하여, 셀 오름차순, 내림차순 정렬하기(Sort) (0) | 2021.05.20 |