У меня есть 3 кнопки выбора, привязанные к ячейке A1,
У меня также есть макрос, который запускается при изменении ячейки A1.
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1")) Is Nothing Then
Select Case Range("A1").Value
Case 1
Range("C7:K32").NumberFormat = "_-* #,##0_-;-* #,##0_-;_-* ""-""??_-;_-@_-"
Case Else
Range("C7:K32").NumberFormat = "_-$* #,##0_-;-$* #,##0_-;_-$* ""-""??_-;_-@_-"
End Select
End If
End Sub
Если я вручную ввожу значение в ячейку A1, макрос работает нормально, однако если я изменяю значение с A1
помощью кнопок выбора, макрос не запускается.
Есть ли способ запустить макрос при изменении значения A1s с помощью кнопок выбора?
решение1
Если вы используете кнопки ActiveX Option, то вы можете назначить код каждой из них.
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1")) Is Nothing Then
Select Case Range("A1").Value
Case 1
Range("C7:K32").NumberFormat = "_-* #,##0_-;-* #,##0_-;_-* ""-""??_-;_-@_-"
Case Else
Range("C7:K32").NumberFormat = "_-$* #,##0_-;-$* #,##0_-;_-$* ""-""??_-;_-@_-"
End Select
End If
End Sub
Private Sub OptionButton1_Click()
Range("A1") = 1
End Sub
Private Sub OptionButton2_Click()
Range("A1") = 2
End Sub