Excel 單元格公式,以一個等號開始。經過公式,咱們能夠獲取其它單元格的數據,並得出計算結果。編程
爲單元格設置公式的方式與設置普通值是同樣的。bash
import openpyxl
wb = openpyxl.Workbook()
sheet = wb.active
sheet['A1'] = 1
sheet['A2'] = 2
sheet['A3'] = '=SUM(A1:A2)'
print(sheet['A3'].value)
wb.save('formula.xlsx')
複製代碼
運行結果:ui
=SUM(A1:A2)spa
能夠看到,咱們能夠像讀取普通值同樣,讀取單元格中的公式。code
有時候,咱們但願直接讀取計算結果。那麼能夠在 load_workbook() 方法中,將其 data_only 參數設置爲 True,即只讀模式。orm
wb_data_only=openpyxl.load_workbook('formula.xlsx',data_only=True)
sheet = wb_data_only.active
print(sheet['A3'].value)
複製代碼
運行結果:cdn
3blog
注意: 前一個示例保存的 formula.xlsx,必須用 Excel 打開並保存後,才能在只讀模式下,正確讀取公式的計算結果。不然,讀取出來的值會是 None。切記!string
Excel 的公式雖然也能夠編程,但對於複雜的任務,編寫出來的代碼雜糅在一塊兒,很難閱讀與維護。相對來講,使用 Python 代碼來處理複雜的 Excel 計算任務,就會好不少O(∩_∩)O哈哈~it