Подскажите в какой библиотеке хранятся контролы, которые мы вставляем на лист через вкладку Разработчик (не Active X). Если библиотека - MSForms, то кто знает как привязать событие, к примеру MouseMove, для внедренной на лист кнопки?
Библиотека контролов
26.02.2013 07:48:17
|
|
|
|
26.02.2013 08:15:10
а почему не Active X?
Учимся сами и помогаем другим...
|
|
|
|
26.02.2013 09:29:19
Потому что в Object Browser-е не могу найти Active X с полным перечнем свойств и методов, как скажем в MSForms
|
|
|
|
26.02.2013 09:42:03
Правой кнопкой над элементом ActiveX - Свойства. Не это разве нужно?
Учимся сами и помогаем другим...
|
|
|
|
26.02.2013 10:28:30
Ищу возможность сделать тоже самое только для контролов, внедренных на листе Excel
|
|||
|
|
26.02.2013 11:22:24
garriott, уж что-что, а события отслеживать на контролах из ActiveX гораздо проще. Да и набор побольше...
|
|
|
|
27.02.2013 09:39:46
Казанский, не получается использовать данную строку. См прикрепленный файл. |
|||
|
|
28.02.2013 02:10:16
Спасибо за ответ, Казанский, с ActiveX - это понятно, но не подходит. У ActiveX элементов нет точек присоединения, см скриншот. Поэтому в начале темы я написал, что не интересует ActiveX. Использование .OnAction тоже не подойдет, картинка не должна превращатся в "кнопку", запускающюю макрос. |
|||
|
|
28.02.2013 04:00:00
Казанский, большое спасибо за пример!
Я даже не догадывался, что можно таким простым способом, без WinAPI (как в примере от ZVI), отслеживать движение мыша над ней. (как-то в голову не приходило, что можно вставлять картинки в контейнер Image) Добавлю в свою надстройку режим вставки картинок, увеличивающихся при наведении мыша, и возвращающихся к прежним размерам при уходе курсора с картинки. PS: Вот только при сохранении файла (в формате XLS из Excel 2010), Excel почему-то говорит, что картинка в Image станет нередактируемой Почему - так и не понял. Впрочем, фиг с ним, - главное, что все работает без грузящих систему таймеров для отслеживания мыша. |
|
|
|
28.02.2013 04:06:49
А у меня как раз на основании примера от ZVI
![]() |
|
|
|
28.02.2013 07:07:49
Sergei_A, в данном примере при наведении мыши на картинку или шейп TypeName(obj) все равно остается "Range", если навести на статус бар, значение TypeName(obj) станет Nothing. Вобщем не отлавливается картинка..... MS Excel 2007
|
|
|
|
28.02.2013 13:24:22
garriott, возьмите обычную картинку, над ней разместите прозрачный ActiveX Image (BackStyle=0, BorderStyle=0), в процедуре обработки события перемещайте оба объекта.
|
|
|
|
28.02.2013 13:29:30
Запостите в интересное, чтобы не потерять. еще
Изменено:
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук |
|||
|
|
28.02.2013 14:48:38
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук |
|||
|
|
28.02.2013 16:44:59
В продолжение темы - наводим мышь на картинку
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук |
|
|
|
28.02.2013 21:15:00
Интересное решение, решил отметиться чтобы тему не терять.
![]()
|
|||
|
|
28.02.2013 23:31:01
![]() изменил у себя параметры убегания. Теперь от мыши бегает, а не набегает ![]()
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук |
|||
|
|
01.03.2013 01:26:14
nerv, отличное решение! |
|||||
|
|
01.03.2013 01:50:11
Попробовал данный пример на Excel 2010 - все работает. В Excel 2007 TypeName(obj)="Picture" как будто не существует. |
||||
|
|
|||
Читают тему