| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > OleDB и Excel. "Непостоянные" функции |
| Автор: Nerfair 25.9.2012, 11:31 | ||||
| Доброе время суток, есть документ .xls (excel) который открывается в C# с помощью OleDB, и в него добавляется два числа (допустим 3,5 и 7,1). В .xls документе есть клетка в которой складываются эти два значания (=sum(A1:A2)). Позже эта клетка (с суммой) опять считается в C# Проблема: После внесения изменений в xls файл с помощью C#/OleDB клетка с суммой из C# не читается. К чему пришел за время попыток фикса: Если открыть документ в экселе и ничего не изменяя нажать "сохранить" (либо ctrl+s) то клетка в C# считывается нормально, если оставить без изменений и не сохранять - то нет. Проблема еще в том что изначально документ не вызывает никаких ошибок, а после изменения он при закрытии просит сохранить изменения, как буд то что то менялось. В интернете нашел информацию о так называемых непостоянных функциях (Volatile), но у меня в документе нет ничего похоже на =NOW().
Как считываются
Кто нибудь сталкивался? --- Прикрепил архив, invoice.xls закинуть в десктоп |
| Автор: dim4an 25.9.2012, 22:12 |
| а вам принципиально нужно использовать OleDB для работы с эксел? Если нет, то рекомендую вам заюзать Aspose Cell, функционал данной библиотеки для работы с ексел документами, гораздо мощнее. Попробуйте посмотреть в ее сторону |