7 / 7 / 2
Регистрация: 31.07.2015
Сообщений: 27
|
|
1 | |
Будет ли программа работать с Excel в системе, где не установлен MS Office03.09.2015, 16:44. Показов 1721. Ответов 8
Метки нет (Все метки)
Доброго времени суток!
Я пишу программу в которой время от времени происходит "общение" с файлами Excel. Соответственно для того что бы возможно было работать с файлами Excel нужно было добавлять ресурс Microsoft Excel Object Library. Интересует такой вопрос: будут ли работать все эти функции на компьютере, на котором нет офиса, или установлен офис более ранней версии?
0
|
03.09.2015, 16:44 | |
Ответы с готовыми решениями:
8
Будет ли приложение работать с БД, если в системе не установлен Access Как можно работать с книгой Excel, если не установлен MS Office? Определить, установлен ли Excel в системе Экспорт данных в Excel при условии, что на стороне клиента не установлен MS Office |
2080 / 1238 / 464
Регистрация: 20.12.2014
Сообщений: 3,237
|
|
03.09.2015, 21:10 | 2 |
С Excel не пробовал, но по опыту работы с Access могу сказать, что если вы работаете через ADO, то наличие офиса не обязательно. Если через Interop и у вас в коде есть Open, то думаю, что работать не будет. Тоже самое и в случае более ранней версии. Но, еще раз повторю - это чисто личное мнение.
0
|
7 / 7 / 2
Регистрация: 31.07.2015
Сообщений: 27
|
|
13.09.2015, 23:04 [ТС] | 3 |
Проверил на другом пк, работа с аксес проходит нормально, а вот для создания, редактирования и сохранения доков ексель и ворд нужна установленная актуальная версия офиса
0
|
1713 / 1201 / 227
Регистрация: 23.12.2010
Сообщений: 1,530
|
|
14.09.2015, 11:37 | 4 |
Сообщение было отмечено termos38 как решение
Решение
потому что сам по себе Access тоже можно представить как отдельно взятую клиентскую прогу для работы с БД. Т.е она работает с БД через тех же провайдеров данных, что и ваша прога. Провайдеры данных поставляются обычно с самой ОС, если это не что-то специфическое, конечно
Не обязательно использовать раннее связывание. Все равно не заработает. Установленный Word или Excel - обязательны, если мы пользуемся их библиотеками (и не важно, как мы связываем библы со своей программой). Нет, реальна ситуация, когда прога писалась в упряжке с 2003 excel, а у юзера заработает и под 2007. Проверено. В обратном направлении, кстати, тоже. Поэтому приходилось в своих работах, например, закладывать создание панели инструментов как в виде ленты (для 2007 и новее), так и в виде обычной панельки (2003 и древнее). Просто на старте - проверка версии установленного компонента Office. А еще неплохо при раннем связывании в списке ссылок проекта указывать False вместо Trгу (по умолчанию) для ссылок на такие библы. Т.е. рабочая версия проги не станет искать библиотеку возле себя, а воспользуется той, что зарегистрирована в системе. Т.е. на конечной машине в работу пойдет родная библа офиса, который установлен.
3
|
Модератор
4304 / 3379 / 506
Регистрация: 27.01.2014
Сообщений: 6,181
|
|
18.09.2015, 20:57 | 5 |
Юпатов Дмитрий, но студия дает аерсию библы минимум 12.0, что равняется MS OFFICE 2007... все что ниже - не найдет, а выше 12.0го офиса - рабоиает... поэтому с 2003 офисом только позднее связывание спасет и константы заранее подготовленеые для конкретных опепаций...
Вррде так. А вообще ведь можно файлы эксель грузить чепез провайдеров и нет необходимости иметь в системе само приложение ЕКСЕЛЬ... тут кстати кто-то уже писал по-моему какой провайдер. Единственное - для xls версия 4.0, для xlsx 12.0... в остальном работа как с базой данеых ADO.NET
0
|
1713 / 1201 / 227
Регистрация: 23.12.2010
Сообщений: 1,530
|
|
19.09.2015, 00:16 | 6 |
Странно, но у меня была ситуация, когда прога под эксель написана в упряжке с 2007 офисом, в итоге успешно стартовала и в 2003. Раннее связывание с библой 12 версии офиса, потом установка атрибута "копировать локально" в false, компиляция проекта, компиляция установщика (там еще куча шаблонов в комплекте, файл БД, картинки и прочая дребедень + записи в реестр для автостарта надстойки). Я тогда тоже не ожидал, однако ж заработало.
можно и так. При этом интересен вариант писать на раннем связывании, а финальный релиз перевести на позднее. Получим и наглядное написание (без необходимости лазить в vba за объектной моделью) и в итоге полную независимость от версий (лишь бы в более новых не почикали объекты и методы).
0
|
Модератор
4304 / 3379 / 506
Регистрация: 27.01.2014
Сообщений: 6,181
|
|
19.09.2015, 01:57 | 7 |
Юпатов Дмитрий, да действительно интересно. Ну а на ранннм связывании хооошо писать, но после перевода на позднее, нужно не забыть про константы... многие пугаются ошибок, и не разобравшись толком бросают идею позднего связывания... хотя дело было всего лишь в не объявленных константах )
0
|
Модератор
4304 / 3379 / 506
Регистрация: 27.01.2014
Сообщений: 6,181
|
|
19.09.2015, 14:10 | 9 |
lamorez, она не всегда будет удобна, так как в случае незаполненной ячейки, при прохождении через нее, библа выдаст исключение... хотя следующая за ней будет не пустая...
Для простых и не объемных файлов - COM соединение на мой взгляд - само то, так как большой количество функций экселя становится доступно. Но это ИМХО. Добавлено через 2 минуты Да и вес NPOI не маленький, плюс одним DLL файлом там все вопросы с Ексель не решишь...
0
|
19.09.2015, 14:10 | |
19.09.2015, 14:10 | |
Помогаю со студенческими работами здесь
9
Будут ли работать приложения с функциями framework 4 на системах, где он не установлен? не выгружает в excel где не установлен delphi Программа не работает на компьютере, где не установлен Builder Без установленного MS Office моя приложуха, использующая Ole DB будет работать? Как работать с файлом Excel без установленного MS Office Delphi 7 и RAD studio 2010 на одной системе, будет работать? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |