1 2 3 4 5 6 7 8 9 10 11 |
Private Sub Worksheet_SelectionChange(ByVal Target As Range) ' セルが1つで、かつB列の場合にのみマクロを実行する If Target.Cells.Count = 1 And Target.Column = 2 Then ' B列限定 ' セルに○がある場合は削除し、ない場合は○を入力する If Target.Value = "○" Then Target.ClearContents Else Target.Value = "○" End If End If End Sub |
このVBAコードは、Excelのワークシートで、指定された列(B列)に対してマウス左クリックで動作するマクロです。
具体的には、B列のセルがクリックされた場合、そのセルの値が「○」であれば削除し、そうでなければ「○」を入力します。
例えば、Excelを使って表を作成しているときに、特定の列に対して定型的な操作を行いたい場合に活用できます。たとえば、ある列に「○」を入力することで、その行を特定のカテゴリーに分類する、あるいは特定の処理を行う、といったことが考えられます。
また、このようなマクロを作成することで、表の編集作業を効率化することができます。
以下のようにコードを変更することで、2回目のクリックで「✕」を入力するようにできます。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
Private Sub Worksheet_SelectionChange(ByVal Target As Range) ' セルが1つで、かつB列の場合にのみマクロを実行する If Target.Cells.Count = 1 And Target.Column = 2 Then ' B列限定 ' セルに○がある場合は削除し、ない場合は○を入力する If Target.Value = "○" Then Target.Value = "✕" ' 2回目のクリックで「✕」を入力 ElseIf Target.Value = "✕" Then Target.ClearContents ' 3回目のクリックでセルの内容をクリア Else Target.Value = "○" ' 初回のクリックで「○」を入力 End If End If End Sub |
コメント