Вот здесь есть решение, как запустить макрос при появлении определенного значения в ячейке - https://www.planetaexcel.ru/forum/?FID=8&PAGE_NAME=read&TID=8314. А есть ли способ, чтобы макрос вставлять не в модуль листа, а в личную книгу и чтобы он так же отрабатывал?
Спасибо за наводку. Получился такой код - при появлении слова "Сигнал" в ячейках K5, K6, K7 на листе "Лист1" включается звук 1.wma:
Код
Option Explicit
Private WithEvents App As Application
'Назначаем значение переменной App
Private Sub Workbook_Open()
Set App = Application
End Sub
Private Sub App_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim objSh As Object
If Sh.Name = "Лист1" Then
If Not Intersect(Target, Range("K5:K7")) Is Nothing Then
If Target = "Сигнал" Then
Set objSh = CreateObject("Shell.Application")
objSh.Open ("C:\Users\Максим\Music\1.wma")
End If
End If
End If
End Sub
Все работает!
Но, на всякий случай, вы не могли бы посмотреть все ли в нем нормально?