|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - [решено] результаты формул в excel |
|
C/C++ - [решено] результаты формул в excel
|
Ветеран Сообщения: 908 |
Есть программа, которая читает содержимое xls-файла через OLEDB (написано на C#). Файл этот содержит расчетные формулы, типа: если дата окончания работы < даты срока, то состояние = "в норме", если нет, то "отклонение". Так вот интересует конечное содержимое этих, так сказать, ячеек состояния. Опытным путем я понял, что эксель, что называется, проводит формулы, т.е. записывает результаты вычислений по ним в какой-то кеш документа, откуда потом берет, чтобы не считать заново (и, по всей видимости, он и читается при OLEDB). Так вот, при сохранении документа, видать, не все результаты формул были сохранены (сами формулы на месте), так как при обращении прогаммы к этим ячейкам возвращается не то, что должно там быть (не тот результат, который видим в документе). А если просто-напросто открыть документ и закрыть, ничего не меняя и ответив Да в диалоге Сохранить документ (видимо как раз-то самое проведение), то впоследствии данные читаются нормально. Точнее, как сказать читаются. Читаются они в обоих случаях. Только результат правльный - во втором (то что видит прогамма = тому, что есть в документе). Такой глюк не у всех, а лишь у некоторых формул. Так вот, можно ли как-то "провести" документ, не открывая/закрывая его?
|
|
Отправлено: 11:00, 20-04-2008 |
![]() Ветеран Сообщения: 1180
|
Профиль | Отправить PM | Цитировать Есть вариант создать объект activeX "Excel.Sheet", "скопировать" и "вставить значения". Потом работать со значениями...
|
Отправлено: 14:39, 21-04-2008 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 369
|
Профиль | Отправить PM | Цитировать Если ваш файл не "надстройка" (расширение ***.xla - скомпилированный файл)а обычный или шаблон, Тогда в открытом файле нажмите Alt+F8 и в появившемся окне поочерёдно тыкая на каждую "строчку" в самом большом диалоговом окне (это названия макросов) и нажимая "изменить" - прочитайте содержимое этих макросов. Там наверняка будет ясно где храняться промежуточные данные.
|
Отправлено: 23:57, 21-04-2008 | #3 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
C/C++ - Ввод формул | Doom77 | Программирование и базы данных | 7 | 05-11-2009 00:49 | |
Глюки редакторе формул | Mishenka | Программное обеспечение Windows | 11 | 20-12-2007 01:15 | |
Распознавание формул. | BlackEric | Хочу все знать | 1 | 05-06-2006 01:52 | |
Delphi - Delphi | Отображение математических формул | Ilsha sh | Программирование и базы данных | 2 | 31-07-2005 20:32 | |
Delphi - Delphi интерпретатор формул | Roman Go | Программирование и базы данных | 1 | 26-07-2003 20:12 |
|