【发布时间】:2019-12-09 10:23:53
【问题描述】:
我正在使用 OpenPyxl 创建和修改 Excel 工作表。 我在 Excel 中有以下公式:
=(SUM(IF(LEFT(Balances!$B$2:$B$100,LEN($B4))=$B4,Balances!$D$2:$D$100)))
这个公式是一个“数组公式”,但是为了手写它,我必须用 CTRL+SHIFT+ENTER 完成(因为它是一个数组公式)。 这个变换然后公式如下:
{=(SUM(IF(LEFT(Balances!$B$2:$B$100,LEN($B4))=$B4,Balances!$D$2:$D$100)))}
我希望能够使用以下代码通过 OpenPyxl 编写此公式:
sheet.cell(row=j, column=i).value = '{=(SUM(IF(LEFT(Balances!$B$2:$B$100,LEN($B4))=$B4,Balances!$D$2:$D$100)))}'
但是,它不起作用。 OpenPyxl 无法管理它。它给了我写的公式但不起作用。
我可以用 XLSX Writer 做到这一点 https://xlsxwriter.readthedocs.io/example_array_formula.html 但是 XLSX 编写器不适用于已创建的文件。
我看不到要走的路。
【问题讨论】:
-
我已经看过这篇文章但不明白如何让它工作stackoverflow.com/questions/52488989/…
标签: python excel excel-formula openpyxl