Дорое время суток!
Подскажите пожалуйста как можно навесить выполнение процедуры на выделение ячейки на листе.
Необходимо для сортировки в табличке т.е. клацнул по полю в шапке и табличка сортируется.
Спасибо,
Моргачев Александр.
Обработка событий на рабочем листе
Модератор: Naeel Maqsudov
- Naeel Maqsudov
- Сообщения: 2570
- Зарегистрирован: 20 фев 2004, 19:17
- Откуда: Moscow, Russia
- Контактная информация:
Можно, конечно, и на смену выделения ячейки, но несомненно лучше делать это на двойной щелчок, так как смена выделения будет срабатывать и при перемещении табличного курсора стрелками.
В модуле того самого листа на объект Worksheet добавьте нужный обработчик:
SelectionChange - На смену выделения
BeforeDoubleClick - на двойной щелчок
На всякий случай, немного о том, как добавляется обработчик:
Из оукна проекта откроем модуль листа Лист1 (или ка он там называется).
Над текстом модуля выше есть 2 поля со списком.
В левом выберем объект Worksheet а в правом название события BeforeDoubleClick.
Получится:
Чтобы узнать, какую ячейку пощелкали будем использовать параметр Target, а в конце работы сделаем Cancel=true, чтобы не происходило то, что обычно происходит при двойном щелчке (а происходило только наше действие)
В модуле того самого листа на объект Worksheet добавьте нужный обработчик:
SelectionChange - На смену выделения
BeforeDoubleClick - на двойной щелчок
На всякий случай, немного о том, как добавляется обработчик:
Из оукна проекта откроем модуль листа Лист1 (или ка он там называется).
Над текстом модуля выше есть 2 поля со списком.
В левом выберем объект Worksheet а в правом название события BeforeDoubleClick.
Получится:
Код: Выделить всё
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
End Sub
Код: Выделить всё
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Select Case Target.Address
Case "$A$1"
range(...).Sort ...
Cancel = True
Case "$A$2"
range(...).Sort ...
Cancel = True
End Select
End Sub
- Naeel Maqsudov
- Сообщения: 2570
- Зарегистрирован: 20 фев 2004, 19:17
- Откуда: Moscow, Russia
- Контактная информация:
morgacev, Вам замечание: "Неподходящее название темы". Здесь более половины сообщений являются сообщениями по теме VBA&Excel.Заголовок сообщения: VBA&Excel
Тема была переименована.