[openpyxl] 이미지 삽입 # 패키지 설치 pip install Pillow from openpyxl import Workbook from openpyxl.drawing.image import Image wb = Workbook() ws = wb.active # 이미지 불러오기 img = Image("img.png") # C3에 이미지 삽입 ws.add_image(img, "C3") wb.save("demo.xlsx") RPA/Python 2021.04.27
[openpyxl] Chart 그리기 from openpyxl import load_workbook from openpyxl.chart import Reference, BarChart, LineChart wb = load_workbook("demo.xlsx") ws = wb.active # Bar 차트 그리기 # 엑셀의 값 범위 정의 bar_value = Reference(ws, min_row=2, max_row=11, min_col=2, max_col=3) # Bar 차트 생성 bar_chart = BarChart() # 차트 값 넣기 bar_chart.add_data(bar_value) # 차트의 시작지점은 E1으로 차트 그리기 ws.add_chart(bar_chart, "E1") # Line 차트 그리기 (1 row에 타이틀이 있을 경.. RPA/Python 2021.04.27
[openpyxl] Cell 병합 및 해제 from openpyxl import Workbook wb = Workbook() ws = wb.active # B2부터 D2까지 Cell 병합 ws.merge_cells("B2:D2") # 병합된 Cell에 값 입력 ws["B2"].value = "Merged Cell" # 병합 해제 ws.unmerge_cells("B2:D2") wb.save("demo.xlsx") RPA/Python 2021.04.27
[openpyxl] Cell 수식 from openpyxl import Workbook import datetime # 새로운 파일 생성 wb = Workbook() ws = wb.active ws["A1"] = datetime.datetime.today() # 오늘날짜 Date type ws["A2"] = "=SUM(1, 2, 3)" # 합계 ws["A3"] = "=AVERAGE(1, 2, 3)" # 평균 ws["A4"] = 10 ws["A5"] = 20 ws["A6"] = "=SUM(A4:A5)" # Cell의 합 wb.save("demo.xlsx") ========================================== # 수식 적용된 Cell 값 읽기 from openpyxl import load_workbook wb = l.. RPA/Python 2021.04.27
[openpyxl] Cell 스타일 from openpyxl import load_workbook wb = load_workbook("demo.xlsx") ws = wb.active # column 넓이 변경 ws.column_dimensions["A"].width = 5 # row 높이 변경 ws.row_dimensions[1].height = 50 a1 = ws["A1"] b1 = ws["B1"] c1 = ws["C1"] # Cell 글자의 폰트 변경 a1.font = Font(color="FF0000", italic=True, bold=True) # 빨간, 이텔릭체, 굵게 b1.font = Font(color="CC33FF", name="Arial", strike=True) # 퍼플, Arial 폰트, 가운데 취소선 c1.font =.. RPA/Python 2021.04.27
[openpyxl] Cell 값 이동 (잘라내기-붙여넣기) from openpyxl import load_workbook wb = load_workbook("demo.xlsx") ws = wb.active # B2부터 드래그해서 C8까지 Cell을 B2기준 행+1(3), 열+2(D) 이동하여 붙여넣기 ws.move_range("B2:C8", rows=1, cols=2) wb.save("demo.xlsx") RPA/Python 2021.04.23
[openpyxl] 행열 삽입/삭제 from openpyxl import load_workbook wb = load_workbook("demo.xlsx") ws = wb.active # 삽입 # 2번째 행에 하나의 행 삽입 (row 2에 우측 버튼 클릭하여 삽입) ws.insert_rows(2) # 3번째 행에서 두칸 삽입 ws.insert_rows(3, 2) # 2번째 열에서 하나의 열 삽입 (column B에 우측 버튼 클릭하여 삽입) ws.insert_cols(2) # 2번째 열에서 세칸 삽입 ws.insert_cols(2, 3) # 삭제 # 2번째 행 삭제 (row 2에 우측 버튼 클릭하여 삭제) ws.delete_rows(2) # 3번째 행부터 두칸 삭제 ws.delete_rows(3, 2) # 2번째 열 삭제 (column B에.. RPA/Python 2021.04.23
[openpyxl] Cell 값 찾기/수정 from openpyxl import load_workbook wb = load_workbook("demo.xlsx") ws = wb.active # 2번째 row (A2부터 ~)부터 끝까지 값 찾기 (A2, B2, A3, B3, A4, B4 ~~) for row in ws.iter_rows(min_row=2): # for row in ws.iter_rows(max_row=2): # 처음부터 2번째 row까지 # Cell값이 80 초과 if int(row[1].value) > 80: print('80 초과') # '초과'값으로 변경 row[1].value = '초과' wb.save("demo.xlsx") RPA/Python 2021.04.22
[openpyxl] Cell에 값 쓰기/읽기 from openpyxl import Workbook from openpyxl.utils.cell import coordinate_from_string from random import * # 새 파일 생성 wb = Workbook() # 기존 파일 읽기라면... # from openpyxl import load_workbook # wb = load_workbook("demo.xlsx") ws = wb.active # Cell에 값 쓰기 1 (A : 열 - column, 1 : 행 - row) ws["A1"] = 'test' ws["A2"] = '한글' ws["A3"] = 3 ws["B1"] = 4 ws["B2"] = 5 ws["B3"] = 6 # Cell에 값 쓰기 2 # row = 1 -> 1, co.. RPA/Python 2021.04.22