「xlwt 数式」
といった検索キーワードでのアクセスに気が付きました。
xlsファイルへの書き込みを行うPythonのライブラリxlwtを使って、数式を入力するにはどのようなコードを書けばいいのかを探していらしたのでしょう。
xlwtで数式を書き込むサンプル
以下のコードが参考になるでしょう。
bk = xlwt.Workbook()
sh = bk.add_sheet('数式の書き込みサンプル')
sh.write(0, 0, 100) # A1セル
sh.write(0, 1, 5) # B1セル
sh.write(0, 2, xlwt.Formula('A1*B1')) # C1セル
sh.write(0, 3, xlwt.Formula('IF(C1>=500, "〇", "-")')) # D1セル
上記のコードを実行すると、
A1セルに
100
B1セルに
5
C1セルに
=A1*B1
D1セルに
=IF(C1>=500,"〇","-")
が入力されたブックsamp_formulas.xlsが、Cドライブtempフォルダーに作成されます。
xlwtで数式を書き込む処理について
セルに数式の書き込みを行っているのは、
sh.write(0, 2, xlwt.Formula('A1*B1'))
sh.write(0, 3, xlwt.Formula('IF(C1>=500, "〇", "-")'))
です。
Worksheet.write()メソッドの第3引数labelに、xlwt.Formulaオブジェクトを指定すれば、数式が書き込まれます。
xlwt.Formulaコンストラクタの引数に、
sh.write(0, 2, xlwt.Formula('=A1*B1'))
sh.write(0, 3, xlwt.Formula('=IF(C1>=500, "〇", "-")'))
のように「=」を入れてはダメな点に注意が必要でしょう。
最終更新日時:2020-05-31 12:08