|
Настройки Excel (xla)
|
|||
---|---|---|---|
#18+
у меня есть файл xla, я скопировал в папку автозагрузке Excel-а теперь файл xla загружаеться вместе с любой новой книгой, теперь вопрос такой.... Как мне потавить на панел инструментов кнопку, и привезать к ней модуль который находиться в файле xla, но все это должно работать под любым юзером.... уже несколько дней мучаюсь, ничего не получаеться.. помогите ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2004, 09:41 |
|
Настройки Excel (xla)
|
|||
---|---|---|---|
#18+
делаешь свою панельку, на ней свою кнопку, потом открываешь свою надстройку, идеш в настройки панели инструментов, выбираешь свою панельку, жмешь кнопку вложить... дальше уже дело техники ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2004, 10:47 |
|
Настройки Excel (xla)
|
|||
---|---|---|---|
#18+
unicodexla я скопировал в папку автозагрузке Excel-а... Как мне потавить на панел инструментов кнопку и привезать к ней модуль который находиться в файле xla... Lenivecделаешь свою панельку, на ней свою кнопку, потом открываешь свою надстройку, идеш в настройки панели инструментов, выбираешь свою панельку, жмешь кнопку вложить...Всё гораздо проще: 1. xla помещаешь в папку C:\Program Files\Microsoft Office\Office\Library 2.В Excel'е: Сервис-->Надстройки - появляется строчка с именем ТВОЕЙ надстройки. Ставь птицу и пользуйся, будь ты даже "негром преклонных годов"! ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2004, 11:10 |
|
Настройки Excel (xla)
|
|||
---|---|---|---|
#18+
2 Processor все это понятно и ежу, но предложенный вариант не решает основного вопроса, создание своей кнопки под любым усером дело в том что кнопку то можно создать, но после того будет осуществлен вход на машину под другим пользователем, панел и кнопка созданные перед этим в другом профиле не будут отображены на нового пользователя мой же вариант решает эту проблему а каким образом подключать надстройку это как говорится хозяин барин да, кстати, надстройку не обязательно помещать в какой нить определенный каталог, она отлично будет работать из любого каталога, доступного всем пользователям ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2004, 12:34 |
|
Настройки Excel (xla)
|
|||
---|---|---|---|
#18+
Lenivecсоздание своей кнопки под любым усером"под любым" не значит "для всех". IMHO, on demand предпочтительнее. Поэтому не факт, что это рационально:мой же вариант решает эту проблему... будут отображены на нового пользователя...Насколько я понимаю, акцент поставлен на unicodeКак мне потавить на панел инструментов кнопку, и привезать к ней модуль который находиться в файле xlaБез лишних телодвижений свою кнопку (и не одну) можно поставить программно (и ненавязчиво), например, в КОНТЕКСТНО-ЗАВИСИМОЕ меню: ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2004, 14:25 |
|
Настройки Excel (xla)
|
|||
---|---|---|---|
#18+
на все это хорошо но вот модуль находящийся в файле xla нельзя присвоить кнопке так как Excel не видет этот макрос в списке макросов ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2004, 14:46 |
|
Настройки Excel (xla)
|
|||
---|---|---|---|
#18+
2 Processor можно и программно, но автор этого не спрашивал, поэтому я предложил наипростейший выриант, без программирования ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2004, 15:22 |
|
Настройки Excel (xla)
|
|||
---|---|---|---|
#18+
unicodeна все это хорошо но вот модуль находящийся в файле xla нельзя присвоить кнопке так как Excel не видет этот макрос в списке макросов а руки тебе на что дадены, или кроме как на кнопки мыши тыкать больше ни на что не способен? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2004, 15:23 |
|
Настройки Excel (xla)
|
|||
---|---|---|---|
#18+
в конечном итоге надстройку её даже не обязательно подключать, чтобы получить доступ к её модулям, можно вообще в имя макроса для кнопки писать конструкцию типа: 'Путь к файлу'!Имя функции ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2004, 15:29 |
|
Настройки Excel (xla)
|
|||
---|---|---|---|
#18+
[quot Lenivec]а руки тебе на что дадены...?[quot]И это - прямая обязанность программера. В приводимом мною примере после того, как ЮЗЕР установил галочку напротив Add-In'а, код в xla встраивает соответствующие пункты (или кнопки) "куда-следует", а юзер только информируется о том, ЧТО ему стало доступно. И наоборот, при снятии галочки код в xla демонтирует установленное, но при этом чесно предупреждает: ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2004, 16:04 |
|
Настройки Excel (xla)
|
|||
---|---|---|---|
#18+
Я не понял в чём трудность: при подключении AddIn модуля возникает событие AddinInstall. Поэтому достаточно добавить код обработки данного события, который и будет добавлять кнопку на панель. При отключении AddIn возникает событие AddinUninstall в котором нужно вставить код отключения кнопки. В качестве альтернативы можно обрабатывать события Open и BeforeClose (которые также возникают при открытиии и закрытиии AddIn). Вот пример кода для событий Open и BeforeClose : 'Задаём имя свойству Tag Const strTagNameButtion As String = "Cheking_data" Private Sub Workbook_Open() Dim MyButton As Office.CommandBarButton 'Находим кнопку по свойству Tag Set MyButton = Application.CommandBars.FindControl(, , strTagNameButtion) 'Если кнопка не создана - создаём If MyButton Is Nothing Then Set MyButton = Application.CommandBars("Worksheet Menu Bar").Controls.Add(1) With MyButton .Caption = "Ïðîâåðêà SAP" .Style = msoButtonCaption .Tag = strTagNameButtion .TooltipText = "Здесь вводим текст подсказки" .OnAction = ThisWorkbook.Name & "!Checking" ' после ! указываем имя процедуры которую нужно выполнить после нажатия на кнопку End With End If End Sub Private Sub Workbook_BeforeClose(Cancel As Boolean) Dim MyButton As Office.CommandBarButton 'Находим кнопку по свойству Tag Set MyButton = Application.CommandBars.FindControl(, , strTagNameButtion) 'Если кнопка найдена - удалить If Not MyButton Is Nothing Then MyButton.Delete End Sub Внимание! Данный код нужно добавить в объект "ЭтаКнига" при создании надстройки. Кстати, надстройки xla лучше всего устанавливать Installером а не вручную. Я написал его на VBS. Очень удобно. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2008, 15:26 |
|
Настройки Excel (xla)
|
|||
---|---|---|---|
#18+
Не знаю точно, как будет работать код с открытием и закрытием, но я лично решая аналогичную проблему пришел к тому, что написал класс унаследованный от Application и всё работает без глюкоф. Всех проблем не помню, но по моему некоторые события после запуска приложения чего-то не обрабатываются, поэтому прибег к этому выходу. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2008, 12:14 |
|
|
start [/forum/topic.php?fid=61&msg=35485559&tid=2174960]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
35ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
others: | 341ms |
total: | 468ms |
0 / 0 |