powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Управление элементами Shapes
7 сообщений из 7, страница 1 из 1
Управление элементами Shapes
    #38161627
josefa-nicole
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, помогите советом.
На листе Excel программно созданы 40 элементов
ActiveSheet.Shapes.Range(Array("O1")), ActiveSheet.Shapes.Range(Array("O2")), ActiveSheet.Shapes.Range(Array("O3")), ....
Необходимо чтобы при нажатии на любой из объектов < О2_Click() > выходило сообщение о номере выбранного объекта.
Ничего лучше придумать не смогла как

Private Sub O1_Click()
MsgBox "Object N 1"
End Sub

Private Sub O2_Click()
MsgBox "Object N 2"
End Sub

Private Sub O3_Click()
MsgBox "Object N 3"
End Sub

и 40 повторений...

Помогите советом как определить какой из элементов был нажат или выделен.
Можно ли проверять что-нибудь типа --- ActiveSheet.Shapes.Range(Array("O1")).Selection =True
...
Рейтинг: 0 / 0
Управление элементами Shapes
    #38161704
Дмит
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно назначить один макрос на все Shape.
В макросе - MsgBox Application.Caller покажет - кто его запустил.
...
Рейтинг: 0 / 0
Управление элементами Shapes
    #38162178
josefa-nicole
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дмит,

спасибо за ответ.
Проблема в том,что назначить один макрос не получается. Все объекты выделяю и возможность назначить макрос не подсвечивается. Может это быть потому что Shape Image-картинки?
...
Рейтинг: 0 / 0
Управление элементами Shapes
    #38162727
Казанский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это элементы управления ActiveX? Тогда Caller не поможет.
Почитайте тут: http://www.cyberforum.ru/vba/thread361933.html
...
Рейтинг: 0 / 0
Управление элементами Shapes
    #38168067
josefa-nicole
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Казанский,
спасибо вам!
Все посмотрела, только не могу выделить имя элемента O3_Click(),
чтобы потом вывести его в сообщение MsgBox "Object N 3".
...
Рейтинг: 0 / 0
Управление элементами Shapes
    #38168143
josefa-nicole
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
....вернее сказать какое условие можно поставить, чтобы выделял из всех объектов на листе только тот который нажали.


Public Sub All_print_all_Rnk()
Dim s$
For Each x In colCB

If x.cb Then MsgBox x.cb.Name 'не работает, т.к. x.cb. это Image и проверить "True"/ "False" не получается
Next
...
Рейтинг: 0 / 0
Управление элементами Shapes
    #38168893
josefa-nicole
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Казанский,
спасибо за идею. Разобралась со всем.
Использовала еще
http://www.excel-vba.ru/chto-umeet-excel/kak-bystro-zapolnitochistit-elementy-na-formetextbox-y-combobox-y/
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Управление элементами Shapes
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]