使用xlwt时遇到解析错误。简单的公式就像SUM()工作正常但我试图运行这个稍微复杂的公式并收到以下错误。
xlwt.ExcelFormulaParser.FormulaParseException: can't parse formula =COUNTIFS(hospital_data!C1:C6500,LEFT(B1,4),hospital_data!D1:D65000,RIGHT(B1,1),hospital_data!F1:F65000,A3)
这是我试图运行的代码。
hospital_count_formula = '=COUNTIFS(hospital_data!C1:C6500,LEFT({0},4),hospital_data!D1:D65000,RIGHT({0},1),hospital_data!F1:F65000,{1})'.format(quarter_ref, state_ref)
sheet_overview.write(row, column, Formula(hospital_count_formula))
我尝试使用定义的数值范围(A1:A5000)而不是(A:A),我也试过简单地将其传递为字符串但不在Excel中进行评估。
此公式在复制并粘贴到Excel时有效。任何想法都将非常感激。
谢谢!
答案 0 :(得分:5)
您是否阅读过在python-excel google-group上提出相同问题时得到的答案?
(1)丢失=
...与您的SUM()
结果进行比较。
(2)XLS格式不支持Excel 2007中引入的COUNTIFS
函数。
此公式在复制并粘贴到Excel时有效。
不,公式前面带有=
,因此Excel知道您的意思是公式而不是文本确实有效,Excel 2007或更高版本并且您没有尝试另存为Excel 97-2003工作簿(* .xls),不起作用。