Здравствуйте! А если просто ограничить запуск этого макроса? Допустим, на каком-то листе в ячейку А1 ставим "1" и
[vba]Код
Sub Этот_противный_макрос ()
If Range ("какой-то лист!А1").Value="1" Then
Exit Sub
Else
Код макроса
End If
End Sub
[/vba]
А после отладки "1" убираем. Разница с апострофом небольшая, но если много листов и в каждом листе OnTime Now() то может это и выход?
Трудолюбия понадобится не больше, чем для внесения в код глобальной переменной состояния отладчика, если такая и есть, но про которую мы не знаем