Страницы: 1
RSS
Как запустить код при выделение ячейки.
 
Private Sub Worksheet_Change(ByVal Target As Range)

   Application.OnKey "{'}", "Showsearch"

End Sub

Есть надстройка расширенного поиска (The List Search Add-in) которая запускается при нажатии клавиши  "'"
Возможно ли сделать чтобы он запускался когда выделяешь определенные ячейки.
И только на этом листе.
 
cliff99, выделение это вы что подразумеваете цветом? или все таки активацию ячейки т.е. выбора ее?
в модуль листа.
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$A$1" Then
Ваш код 
End Sub
Изменено: Mershik - 16.03.2020 13:56:06
Не бойтесь совершенства. Вам его не достичь.
 
Нужно чтобы запускался модуль с именем Showsearch
у меня он сейчас запускается клавишей. А нужно при активации ячеек.
Изменено: cliff99 - 16.03.2020 14:12:46
 
cliff99,
попробуйте module1 ваш макрос
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$A$1" Then: Call module1  
End Sub
Изменено: Mershik - 16.03.2020 14:15:01
Не бойтесь совершенства. Вам его не достичь.
 
Выдаёт ошибку.
Может я неправильно спрашиваю.
сейчас при нажатии кнопки запускается надстройка Showsearch.
А нужно при активации ячейки.

Private Sub Worksheet_Change(ByVal Target As Range)

  Application.OnKey "{'}", "Showsearch"

End Sub
 
А зачем модуль? Имя макроса нужно.
 
cliff99, может и не может..сложно судить без видимого файла-примера где вы вставили часть моего макроса в свой.

просто  решил макрос так назвать)
Изменено: Mershik - 16.03.2020 14:22:58
Не бойтесь совершенства. Вам его не достичь.
 
Надстойка The List Search Add-in) запускается нажатием кнопки.
я привел этот код.
А нужно через активацию ячейки.
мне ее через кнопку неудобно запускать.
Если бы указать диапазон ячеек.
Изменено: cliff99 - 16.03.2020 14:25:53
 
Цитата
cliff99 написал:
сейчас при нажатии кнопки запускается надстройка Showsearch.
Для запуска по событию активации нужно, как минимум, знать имя макроса в этой надстройке, который нужно запустить.
 
я скинул саму надстройку
и вот код запускающий ее через кнопку.

Private Sub Worksheet_Change(ByVal Target As Range)

   Application.OnKey "{'}", "Showsearch"

End Sub

нужно задать диапазон ячеек чтобы при активации определенных ячеек она запускалась.
Я думаю если видя как она запускается через кнопку, то вы сможете заставить запустить ее через активацию ячейки.
Изменено: cliff99 - 16.03.2020 14:29:25
 
Цитата
RAN написал:
Цитата cliff99  написал:сейчас при нажатии кнопки запускается надстройка Showsearch.Для запуска по событию активации нужно, как минимум, знать имя макроса в этой надстройке, который нужно запустить.
Это имя - Showsearch
 
cliff99, ну ведь Вам УЖЕ  показали, как при выделении ячейки запускать нужный макрос.
 
Цитата
Юрий М написал:
cliff99 , ну ведь Вам УЖЕ  показали, как при выделении ячейки запускать нужный макрос.
Так, как подсказали - не работает.
через "горячую клавишу" работает.
Пол дня вожусь, чтобы заставить через ячейку работать.
Изменено: cliff99 - 16.03.2020 14:47:45
 
cliff99, а без цитирования никак? Вот я пишу Вам без цитаты - понятно, к кому я обращаюсь?
В макросе из #4 замените module1 на имя макроса (без кавычек).
 
Юрий М, Пробовал - не работает.
Изменено: cliff99 - 16.03.2020 14:53:48
 
Не работает - выдаётся какое либо сообщение, подсвечивается жёлтым одна из строк, ничего не происходит?.. Нельзя ли больше конкретики?
 
cliff99,
"$B$27" замените на нужную Вам ячейку или диапазон
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$B$27" Then
Application.Run ("Showsearch")
End If
End Sub
Не бойтесь совершенства. Вам его не достичь.
 
Mershik, спасибо, теперь - работает.
Страницы: 1
Наверх