前提・実現したいこと
pythonで計算式の入ったexcelファイルを作り、excelに計算させ、その結果を取得したい。
該当のソースコード
import openpyxl
wb=openpyxl.Workbook()
sheet=wb.active
sheet['A1']=1
sheet['A2']=2
sheet['A3']='=A1+A2'
wb.save('test.xlsx')
wc=openpyxl.load_workbook('test.xlsx',data_only=True)
sheetc=wc.active
print(sheetc['A1'].value)
print(sheetc['A2'].value)
print(sheetc['A3'].value)
試したこと
結果、
masaotakano$ python3 testexcel2.py
1
2
None
となって、excelのA3セルの計算式の結果が数値でなくNoneで出力されて困っています。
data_only=Trueをとると
=A1+A2
と正常に出力されます。
wb.save('test.xlsx')
がどうも怪しく、できたtest.xlsxを手動で開いて閉じると、
data_only=Trueで正しく数値が取得されます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。