YouTube 나도코딩님의 동영상을 보면서 공부한 내용입니다.
부족한 내용이나 잘못된 내용은 댓글남겨주시면 감사하겠습니다!
출처 : https://www.youtube.com/channel/UC7iAOLiALt2rtMVAWWl4pnw
1. 수식
# 오늘날짜, SUM, AVERAGE
import datetime # 날짜정보사용하기 위해서
from openpyxl import Workbook
wb = Workbook()
ws = wb.active
ws["A1"] = datetime.datetime.today() #오늘 날짜 정보
ws["A2"] = "=SUM(1,2,3)" # 합계 1+2+3=6
ws["A3"] = "=AVERAGE(1,2,3)" # 평균 2
ws["A4"] = 10
ws["A5"] = 20
ws["A6"] = "=SUM(A4:A5)" #30
wb.save("sample_formula.xlsx")

# 12_formula.py
import datetime # 날짜정보사용하기 위해서
from openpyxl import Workbook
wb = Workbook()
ws = wb.active
ws["A1"] = datetime.datetime.today() #오늘 날짜 정보
ws["A2"] = "=SUM(1,2,3)" # 합계 1+2+3=6
ws["A3"] = "=AVERAGE(1,2,3)" # 평균 2
ws["A4"] = 10
ws["A5"] = 20
ws["A6"] = "=SUM(A4:A5)" #30
wb.save("sample_formula.xlsx")
2. 수식_데이터
# 수식 그대로 가져오기
from openpyxl import load_workbook
# 수식 그대로 가져옴
wb = load_workbook("sample_formula.xlsx")
ws = wb.active
for row in ws.values:
for cell in row:
print(cell)

# 실제 데이터 가져오기
-> 수식이 그대로 들어간거라 한 번 저장해야 계산이 되서 계산 값이 나옴
# 실제 데이터를 가져옴 - 수식 부분을 none라고 뜸
wb = load_workbook("sample_formula.xlsx", data_only=True) # 데이터 여는 속성 true로
ws = wb.active
# evaluate 되지 않은 상태의 데이터는 None이라고 표시
# 현재 엑셀파일을 열면 저장하겠냐고 물음 -> 열기 전엔 수식만 있는데 열고나서 계산이 되었으로
# 그것을 저장하면 수식결과된 값이 저장되어서 값 잘나옴
for row in ws.values:
for cell in row:
print(cell)


# 13_formula_dataonly.py
from openpyxl import load_workbook
# # 수식 그대로 가져옴
# wb = load_workbook("sample_formula.xlsx")
# ws = wb.active
#
# for row in ws.values:
# for cell in row:
# print(cell)
# 실제 데이터를 가져옴 - 수식 부분을 none라고 뜸
wb = load_workbook("sample_formula.xlsx", data_only=True) # 데이터 여는 속성 true로
ws = wb.active
# evaluate 되지 않은 상태의 데이터는 None이라고 표시
# 현재 엑셀파일을 열면 저장하겠냐고 물음 -> 열기 전엔 수식만 있는데 열고나서 계산이 되었으로
# 그것을 저장하면 수식결과된 값이 저장되어서 값 잘나옴
# 수식이 그대로 들어간거라 한 번 저장해야 계산이 되서 계산 값이 나옴
for row in ws.values:
for cell in row:
print(cell)
3. 병합 - merge_cells("영역")
# 14_merge.py
from openpyxl import Workbook
wb = Workbook()
ws = wb.active
# 병합하기
ws.merge_cells("B2:D2") #B2부터 D2까지 합침
ws["B2"].value = "Merged Cell"
wb.save("sample_merge.xlsx")

4. 병합해제 - unmerge
# 15_unmerge.py
from openpyxl import load_workbook
wb = load_workbook("sample_merge.xlsx")
ws = wb.active
# B2:D2 병합되어 있던 셀을 해제
ws.unmerge_cells("B2:D2")
wb.save("sample_unmerge.xlsx")

5. 이미지 삽입
# 16_image.py
from openpyxl import Workbook
from openpyxl.drawing.image import Image #이미지를 사용하기 위해서
wb = Workbook()
ws = wb.active
img = Image("mylove.png")
#C3위치에 img.png파일의 이미지를 삽입
ws.add_image(img, "C3")
wb.save("sample_image.xlsx")
오류 발생 -> pip install Pillow안해서


오류 -> 설치가 안됨

오류해결 -> pip 업데이트


설치완료


'Tools > RPA' 카테고리의 다른 글
| [RPA] 데스크탑UI - 환경설정, 마우스이동, 마우스액션, 마우스정보 (0) | 2021.07.29 |
|---|---|
| [RPA] 엑셀 - 조건에 맞게 수정후 최종성적내기 (0) | 2021.07.29 |
| [RPA] 엑셀 - 차트, 셀스타일 (0) | 2021.07.28 |
| [RPA] 엑셀 - 삽입, 삭제, 이동 (0) | 2021.07.27 |
| [RPA] 엑셀자동화 - 파일불러와서 데이터 추출, 셀 영역, 찾기 (0) | 2021.07.26 |