본문 바로가기

코딩/파이썬과 엑셀

openpyxl로 엑셀 다루기 019. 수식 입력

python : openpyxl : formula

수식 입력

엑셀에서 사용하는 수식은 셀의 value 속성에 원하는 수식을 입력함으로써 정의할 수 있다.

 

아래 코드는 셀 A1 및 셀 F2에 수식을 입력하는 간단한 코드로 openpyxl에서 수식을 입력하는 방식은 엑셀에서 수식을 입력하는 방식과 다르지 않다.

 

openpyxl.utils 모듈의 FORMULAE는 수식의 이름이 저장되어 있는 frozenset 타입의 데이터이다.

 

# openpyxl 3.0.7

from openpyxl import Workbook
from openpyxl.utils import FORMULAE

wb = Workbook()
ws = wb.active

print('SUM' in FORMULAE)

ws.cell(row=1, column=1, value='=SUM(1,2,3,4,5)')
print(ws.cell(1, 1).value)

number_list = [x for x in range(1, 6)]
ws.append(number_list)
ws.cell(row=2, column=6, value='=SUM(A2:E2)')
print(ws.cell(2, 6).value)

wb.save('sample.xlsx')

 

위의 코드를 실행하면 숫자 1~5를 더한 값이 셀 A1에 표시되며, 

 

ws.cell(row=1, column=1, value='=SUM(1,2,3,4,5)')

 

셀 A2~E2의 값을 더한 결과가 셀 F2에 표시된다.

 

ws.cell(row=2, column=6, value='=SUM(A2:E2)')

 

수식 SUM의 사용 결과

 

수식 SUM은 FORMULAE에 포함되기에 'SUM' in FORMULAE의 결과는 True이다.

 

print('SUM' in FORMULAE)

 

FORMULAE에 포함되는 SUM