Ошибка разбора формулы Python xlwt - PullRequest
1 голос
/ 11 февраля 2012

Я сталкиваюсь с ошибкой разбора при использовании 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 Ответ

5 голосов
/ 11 февраля 2012

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

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

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

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

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

...