Python xlwt公式解析错误

时间:2012-02-10 22:16:13

标签: xlwt

使用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时有效。任何想法都将非常感激。

谢谢!

1 个答案:

答案 0 :(得分:5)

您是否阅读过在python-excel google-group上提出相同问题时得到的答案?

(1)丢失= ...与您的SUM()结果进行比较。

(2)XLS格式不支持Excel 2007中引入的COUNTIFS函数。

  

此公式在复制并粘贴到Excel时有效。

不,公式前面带有=,因此Excel知道您的意思是公式而不是文本确实有效,Excel 2007或更高版本并且您没有尝试另存为Excel 97-2003工作簿(* .xls),不起作用。