Формула электронной таблицы не работает

я использую Spreadsheetlight для создания документа Excel. Мне нужно использовать формулу для определенной ячейки, но она не работает. Код:

report.SetCellValue(string.Format("{0}{1}", Report.CELL_MAP.ACTIVITY_CRU_COL, row), string.Format("=IF({0}{1}=0; 0; ROUND(({2}{1}/{0}{1})*100; 0))", Report.CELL_MAP.ACTIVITY_REAL_MD_VAL_COL, row, Report.CELL_MAP.ACTIVITY_INVOICED_MD_VAL_COL));

Есть что-то, что мне не хватает? Формулы настройки, такие как '=E9', сохраняются в ячейке как формула и работают в конечном документе. Есть идеи, почему это не работает?


person BeardedMan    schedule 07.05.2014    source источник


Ответы (1)


Должны ли быть запятые вместо точки с запятой в формуле? Вот так:

report.SetCellValue(string.Format("{0}{1}", Report.CELL_MAP.ACTIVITY_CRU_COL, row), string.Format("=IF({0}{1}=0, 0, ROUND(({2}{1}/{0}{1})*100, 0))", Report.CELL_MAP.ACTIVITY_REAL_MD_VAL_COL, row, Report.CELL_MAP.ACTIVITY_INVOICED_MD_VAL_COL));
person Vincent Tan    schedule 22.05.2014
comment
Я хотел вставить следующую формулу, но она не работает. Excel сообщает об ошибке. =СУММЕСЛИ(D2:D13;=EUR;E2:E13) Я также пробовал предложение Винсента Тана следующим образом: =СУММЕСЛИ(D2:D13,=EUR,E2:E13) - person Joel Hansen; 20.11.2018