![]() |
Модераторы: mihanik |
![]() ![]() ![]() |
|
Louken |
|
|||
Новичок Профиль Группа: Участник Сообщений: 44 Регистрация: 13.9.2008 Где: Кострома Репутация: нет Всего: 1 |
Приветствую всех.
Стоит задача написания надстройки для MS Excel. Она должна производить форматирование документа, его редактирование и уметь отображать собственные диалоговые окна. Все это в real-time, по нажатию кнопки на панели инструментов Excel. Решение этой задачи усложняется следующими ограничениями: 1. На компьютерах пользователей надстройки нет прав администратора; 2. Нет возможности поставить дополнительное ПО, вроде MS VSTO, либо долго и нудно просить админов что-либо сделать; 3. Нет доступа к диску C, он попросту невиден для пользователя (есть диск D и сетевые диски); + ко всему, надстройка, должна быть, по возможности, универсальной, нужна поддержка версий 2003 - 2010, а в идеале и Open Office. Как мне видится идеальное решение (задача максимум): Исполняемый код надстройки написать на Java используя IDE Eclipse (Java+Eclipse - наш корпоративный стандарт). Создать jar файл и подключить его, некоим образом, к Excel и Open Office, как надстройку. Т.е. единый базовый код обработки csv + софто-зависимый код, использующий соответствующий API для доступа и редактирования/форматирования ячеек в таблице (форматирование здесь исключительно для удобства чтения документа). Далее пользователь открывает Excel (Open Office), автоматически подгружается надстройка, которая создает на панели задач кнопку. Пользователь загружает csv, жмет кнопку, видит диалоговое окно и что-то с ним делает. Попытался найти, что-то более менее юзабельное и не очень сложное - попытка провалилась. Нашел только, как добавлять пользовательские функции, но ими мы вообще не пользуемся. Потому упрощаю себе задачу - Open Office и Java отметаются, остаются Excel + C#. Но, если есть идеи, с удовольствием их выслушаю. Задача минимум: Создать универсальную надстройку для Excel (одну для всех версий - 2003-2010). На данный момент уже реализована XLA надстройка, с макросами, автоматическим добавлением кнопок в меню (v2003) и на ленту (v2007) и диалоговыми окнами, но далее совершенствовать ее используя VBA, у меня нету мочи, мне не достаточно языковых возможностей и встроенных классов. Конечно поискал решения и попробовал создать другие виды надстроек:
Я ни за что не поверю, что нет стандартных приемов, при которых пишется простейший код, экспортируются нужные функции в DLL, все это компилируется и подключается к Excel c помощью Меню > Надстройки > Подключить ... Помогите, пожалуйста, найти правильную дорожку, ведь наверняка не мало народу подобными вещами озадачиваются. С уважением, Андрей |
|||
|
||||
Дмит |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 117 Регистрация: 21.4.2006 Где: г.Волгоград Репутация: 8 Всего: 9 |
http://www.dimit.pochta.ru/wopr.html#8 есть примеры но VB6.
|
|||
|
||||
FINANSIST |
|
|||
Статус: Жив ![]() ![]() Профиль Группа: Участник Сообщений: 526 Регистрация: 11.4.2008 Где: Москва Репутация: 13 Всего: 23 |
Louken, что за задачи такие стоят, если языковых возможностей vba для работы excel не хватает? -------------------- “...Брали корову рыжую одну, отдавать будем корову рыжую одну, чтобы не нарушать отчетности” Эдуард Успенский, “Каникулы в Простоквашино” |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Программирование, связанное с MS Office" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще!
|
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Программирование, связанное с MS Office | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |