Страницы: 1
RSS
Как имеющийся код автоматического запуска макроса перевести в "ручной режим".
 
Здравствуй, Форум.
Имеется код:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
   If Target.Cells.Count > 1 Then Exit Sub
   If IsNumeric(Target) And Target.Address = "$D$3" Then
       Select Case Target.Value
       Case Is = 1: Macro1
       Case Is = 2: Macro2
       End Select
   End If

End Sub

Есть ли возможность заставить срабатывать по нажатию кнопки на листе?
 
Есть. Изменить название (то, что после Sub и до первой скобки), переместить код в стандартный модуль, а не в модуль листа, потом нарисовать кнопку и назначить ей макрос.
Изменено: Пытливый - 13.12.2019 14:28:23
Кому решение нужно - тот пример и рисует.
 
Цитата
Пытливый написал:
Есть...
Вы не обратили внимание на Target. Там всё веселее.


Scyth, у Вас макрос срабатывает при изменении значения на листе и привязан к изменяемым ячейкам, так что помимо замечаний Пытливый,   надо немного его сократить.
Код
Sub zzz()
       Select Case range("$D$3").Value
          Case Is = 1: Macro1
          Case Is = 2: Macro2
       End Select
end sub
Изменено: Wiss - 13.12.2019 14:44:43
Я не волшебник, я только учусь.
 
Wiss, Вы еще раз подтвердили, что краткость сестра... знаний.
Спасибо!  
Страницы: 1
Наверх