2012-02-10 7 views
1

Я столкнулся с ошибкой разбора при использовании xlwt. Простая формула вроде SUM() работает нормально, но я попытался запустить эту небольшую более сложную формулу и получил следующую ошибку.Python xlwt Formula Parse Error

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. Любые мысли были бы наиболее оценены.

Спасибо!

ответ

5

Вы прочитали ответ, который был у вас, когда задали тот же вопрос в группе google-python-excel?

(1) Потерять = ... по сравнению с результатами поиска SUM().

(2) Формат XLS не поддерживает функцию COUNTIFS, которая была введена в Excel 2007.

Эта формула делает работу при копировании и вставить в Excel.

Нет, формула предшествует = так в Excel знает, вы имеете в виду формулу вместо текста делает работу с Excel 2007 или более поздней версии и вы не пытались Сохранить как Excel 97-2003 (* .xls), который не работает.