Правильно ли я понимаю ваш вопрос: вы написали в EXCEL формулу, и хотите получить результат, рассчитанный по этой формуле?
1. Лучше сами посчитайте и потом в ячейки запишите результат. Целее будет.
2. А так, попробуйте через getSheetRowColFormula зайти. Я не пробовал, но по описанию похоже. Она два параметра возвращает: формулу и, вроде как, ее результат.
Вообще не очень понятно, как можно получить результат формулы из файла, ведь в файле есть только сама формула, а вычисления производит уже только Excel, когда открывает файл.
Я тоже хотел то же самое написать, но потом сначала нашел инфу, как это через OLE сделать, а потом эту функцию.
С OLE есть ограничение - это больше не поддерживаемый официально функционал. Так что если с функцией не выгорит, то дальше все работает в точности, как коллега Эмиралька сказала: считает не файл - считает программный комплекс (Excel в нашем случае).
ЗЫ. По опыту - лучше всякие формулы, итоги и прочее считать самостоятельно. Это просто потом лучше работает. Да, это более муторно. Я для этого обычно отдельный record объявляю чтобы подбивать итоги там и т.п. Но это окупается большей надежностью.
ЗЫЫ
Если эта функция работает так, как я предполагаю она может, то вам надо будет сначала полностью заполнить весь EXCEL, получить полностью готовый документ. И только потом его проверять этой функцией.
Причем с большой долей вероятности, надо дойти до этапа finish, получить финальный блоб, а потом его прочитать, как бы с нуля. Т.е. фактически open заново выполнить. Возможно оно так сработает.
(Но, как уже много раз говорил, а стоят ли труда эти страдания? Разве что на интерес)
Так или иначе, но все упрется в WorksheetFunction.Match.
Только это не получить результат функции из колонки, а немного сложнее: это выполнить указанную мат. функцию.
---
И я все-таки рекомендую таким не страдать, а просто посчитать самому и выводить результаты, а не функции.
но в рсбанк у меня такое получалось - формировал файл ooxml, и открывал его excel-ем и брал значение ячейки
Ну правильно. Открывали Excel, он считал вам формулы. И вы брали результат.
А тут вы хотите обойтись без Excel.
Если вы позволите аналогию, можно рассмотреть такую ситуацию. Вот вы купили продукты, пришли домой и хотите борщ. И раньше, когда вы жили с родителями, это срабатывало, борщ появлялся в кастрюле как бы сам по себе, а теперь, когда живёте один - нет. И теперь, чтобы борщ появился, вам самому надо его посчитать.
Формулы бывает нужны, когда после вывода в Excel пользователь будет продолжать редактировать файл. Тогда все итоги будут корректными.
Возможно стоит покопать в сторну VBA for Excel. Заложит в шаблон макросы.
Формулы бывает нужны, когда после вывода в Excel пользователь будет продолжать редактировать файл. Тогда все итоги будут корректными.
Возможно стоит покопать в сторну VBA for Excel. Заложит в шаблон макросы.
Ну, пользуйтесь RUNTIME.EXcel.
Но имхо без толку это. ЦФТ web-навигатор продвигает, там vb не работает.
И microsoft от VBA отказалась...
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
Домен cftclub.ru не связан с ЗАО "Центр Финансовых Технологий" и ни в коей мере не нарушает авторских и иных прав
Владелец может не разделять мнения Участников и не несет ответственности за их публикации
Powered by phpBB