Страницы: 1
RSS
Определить адрес столбец и строку ячейки где находится кнопка
 
Добрый вечер всем !

В ячейке таблицы созданы кнопки средствами
Разработчик-Вставить-Элементы управления формы-Кнопка (элемент управления формы)
Кнопка вписана в ячейку - не выходит за границы ячейки
На кнопку привязан макрос
Можно ли с помощью этого макроса определить
номер кнопки и соответственно в каком столбце и строке находится эта кнопка ?

Файл с примером во вложении
Изменено: OlegEgv - 21.12.2022 20:55:01
 
Нашел ответ сам здесь
Код
Sub НомерСтрокиСтолбцаДляКнопки()
'Dim ButtonText As String
'ButtonText = Application.Caller
'MsgBox "Название кнопки " & ButtonText

Dim b As Object
Dim cs, rs As Integer
Set b = ActiveSheet.Buttons(Application.Caller)
With b.TopLeftCell
rs = .Row
cs = .Column
End With

MsgBox "Row Number " & rs & " Column Number " & cs
'далее необходимые действия со строкой и столбцом
' Cells(rs + 5, cs).Select

End Sub
Изменено: OlegEgv - 21.12.2022 21:50:52
 
OlegEgv, Святой ты человек, спасибо.
Дополню для будущих страдальцев - Application.Caller довольно короткий по символам, поэтому если будете пытаться с его помощью определять фигуру, то символов может не хватить и он будет выдавать ошибку. В таком случае нужно либо вручную поменять название фигуры на более короткое либо изнчально использовать фигуры с коротким названием (более удобных решений пока не нашёл)
Изменено: Zozel - 26.04.2024 13:50:39
Страницы: 1
Наверх