オプションボタンの変更によってマクロがトリガーされない

オプションボタンの変更によってマクロがトリガーされない

セルA1にリンクされたオプションボタンが3つあります。

セル 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オプション ボタンを使用して値を変更するとマクロは実行されません。

オプション ボタンを使用して A1 の値を変更するときにマクロを実行する方法はありますか?

答え1

ActiveX オプション ボタンを使用している場合は、それぞれにコードを割り当てることができます。

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

ここに画像の説明を入力してください

関連情報