Worksheet.Change イベント (Excel)

ワークシートのセルがユーザーまたは外部リンクにより変更されたときに発生します。

構文

変更 (ターゲット)

Worksheet オブジェクトを表す変数。

パラメーター

名前 必須 / オプション データ型 説明
Target 必須 Range 変更された範囲が渡されます。 複数のセルを渡すことができます。

戻り値

Nothing

解説

セルが再計算時に変更されると、このイベントは発生しません。 Calculate イベント を使用 して、シートの再計算をトラップします。

次のコード例は、変更されたセルの色を青色にします。

Private Sub Worksheet_Change(ByVal Target as Range) 
    Target.Font.ColorIndex = 5 
End Sub

次のコード例は、セル値が変更されたときに、変更されたセルが列 A 内にあることを確認すると共に、変更されたセル値が 100 よりも大きいかどうかを確認します。 値が 100 よりも大きい場合、列 B 内の隣接するセルの色が赤に変更されます。

Private Sub Worksheet_Change(ByVal Target As Excel.Range) 
    If Target.Column = 1 Then 
        ThisRow = Target.Row 
        If Target.Value > 100 Then 
            Range("B" & ThisRow).Interior.ColorIndex = 3 
        Else 
            Range("B" & ThisRow).Interior.ColorIndex = xlColorIndexNone 
        End If 
    End If 
End Sub

次のコード例は、データがセルに入力された場合に、セル範囲 A1:A10 内の値を大文字に設定します。

Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("A1:A10")) Is Nothing Or Target.Cells.Count > 1 Then Exit Sub
    Application.EnableEvents = False
    'Set the values to be uppercase
    Target.Value = UCase(Target.Value)
    Application.EnableEvents = True
End Sub

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。