2013-03-04 7 views
1

Я пытаюсь добавить функцию редактирования электронных таблиц в моем приложении iOS. Я использую gridview для отображения (не относится к вопросу), и я использую LibXL для загрузки данных в представление. Эта часть работает очень хорошо, но я не могу вычислить формулы после того, как ячейка была изменена.Excel Formula Calculations

Похоже, что когда я пишу формулу с LibXL, это не вычисляет новое значение, просто устанавливая значение формулы (строку). Поэтому, когда я пытаюсь прочитать значение числа из этой ячейки, оно все равно устанавливается на последнее вычисленное число (от excel).

Аналогичным образом, если я создаю ячейки с числами и ячейкой формулы для СУММ их, она никогда не вычисляется, которая считывает значение 0, пока оно не будет открыто в Excel.

Я надеялся, что LibXL был серебряной пулей для моей проблемы, но теперь я застрял только с строкой строки формулы (т. Е. "SUM(A1:b2)") и последним вычисленным значением.

Мне бы очень понравилось, если LibXL просто DID вычислить значения, и я просто ошибаюсь, но я не вижу никакой документации, в которой говорится иначе. Если это не так, есть ли библиотеки Obj-C, C или C++, которые я могу использовать для соответствия синтаксису Excel Formula и вычисления этих значений?

+2

DDMathParser Дейва Делонг имеет возможность добавлять пользовательские функции, проверьте его здесь: https://github.com/davedelong/DDMathParser – danielbeard

+0

Спасибо, это отличное предложение. – mkral

+0

Вы имели в виду, что оба эти C++ и C? –

ответ

2

Просто добавить мой предыдущий комментарий в ответ:

DDMathParser Дейва Делонг имеет возможность добавлять пользовательские функции, проверить его здесь: http://github.com/davedelong/DDMathParser

+0

Я закончил тем, что просто захватил значения ячеек и заменил метки excel (то есть 'A1') значениями в ячейках, для диапазонов я захватил каждое значение ячейки и разделил их запятыми, работал довольно хорошо. – mkral