The Revered Inventor

勉強&発明日誌

エクセル セルにプログラムを仕込む等

【ワークシートをアクティブにしたときのイベント処理】

Private Sub Worksheet_Activate()
        ActiveWindow.Zoom = 200
End Sub


【セルをダブルクリックしたときのイベント処理】

TargetはRange型

if target.row = 1 and target.column = 1  then

の形で個別のセルにプログラムを仕込める。


Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Target.Row = 1 And Target.Column = 4 Then
        Cells(1, 2).Value = "hello"
    End If
    If Target.Row = 2 And Target.Column = 3 Then
        Cells(2, 2).Value = "good"
    End If
    If Target.Row = 3 And Target.Column = 4 Then
        Range("b1:b4").ClearContents
    End If
    
    If Target.Value = "" Then
        Target.Value = "work"
    ElseIf Target.Value = "bad" Then
        Target.Value = "so bad"
    End If
    
    If Target = Cells(1, 1) Then
        Cells(5, 1).Value = "zoom out"
        ActiveWindow.Zoom = 50
    End If
    
End Sub

【セルを右クリックしたときのイベント処理】
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
    If Target.Row = 4 And Target.Column = 4 Then
        Cells(4, 2).Value = "right"
    End If
    
End Sub