Есть ли событие MouseUp для рабочего листа? - PullRequest
1 голос
/ 15 мая 2011

У меня есть пользовательская форма с элементом управления Treeview, и я перетаскиваю узлы из этого элемента управления и помещаю их на рабочий лист.Эта часть работает нормально, но мне нужно знать адрес ячейки (или хотя бы номер строки), где пользователь отбросил узел.Я надеялся найти что-то похожее на событие MouseUp и функцию hittest, но, очевидно, Excel не предоставляет эту функцию.

Конечно, можно проверить Worksheet_SelectionChange, который происходит вскоре после _OLECompleteDrag, но мне это не нравитсякак "верный путь".

Есть идеи?

1 Ответ

1 голос
/ 19 мая 2011

Вы должны поместить свой код в модуль листа (в каталог Microsoft Excel Objects при просмотре Project Explorer из VBA), а не в отдельный модуль в каталоге Modules.По сути, вам нужен обработчик событий, который запускает нужный вам процесс.

Это выполнит запуск и покажет адрес ячейки при запуске.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    MsgBox (Target.Address)

End Sub

Вы должны иметь возможность расширятьсячтобы заставить его делать то, что тебе нужно.Дайте мне знать, как это работает для вас.

...