Excel VBA — запуск макроса, если ячейка в диапазоне нажата и выбрана

Excel VBA — запуск макроса, если ячейка в диапазоне нажата и выбрана

Мне нужна процедура, которая может определить, была ли нажата ячейка в диапазоне, а затем запустить макрос. Я частично решил эту проблему.

Моя проблема в следующем: мне нужно переключать значение всякий раз, когда ячейка нажата, а не всякий раз, когда ячейка выбрана, поэтому

Private Sub Worksheet_SelectionChange(ByVal Target As Range)    

If Not Intersect(Target, Range(testRange) Is Nothing Then
   'Cell was Clicked
End If

End Sub

У меня это работает только до тех пор, пока ячейка не выбрана.

Что делать? Есть ли функция, которая проверяет, был ли выполнен щелчок мыши и выбрана ли ячейка?

решение1

Допустим, мы хотим запустить макрос, который называется « Hello()когда ячейка»В9нажата.

Сначала выберитеВ9и вставьте гиперссылку наВ9.

введите описание изображения здесь

(клик по этой ссылке на самом деле никуда не переходит)

Затем в области кода рабочего листа вставьте:

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
    Call Hello
End Sub

Связанный контент