HOME > 即効テクニック > Excel VBA > セル操作関連のテクニック > 特定の列にオートナンバーを振る(Changeイベント)

即効テクニック

セル操作関連のテクニック

特定の列にオートナンバーを振る(Changeイベント)

(Excel 97)
特定の列にオートナンバーを振る場合、ワークシートの変更された範囲が渡される「Changeイベント」を利用する方法があります。
Changeイベントの構文は次のとおりです。

Private Sub Worksheet_Change(ByVal Target As Range)

Targetには変更された範囲が渡されます。
サンプルマクロでは、そのTargetの列番号を判断条件にして、変更されたのが目的の列であったらOffsetプロパティで行数と列数だけシフトした位置に変更されたセルの行番号を入力することでオートナンバーが振られたように処理しています。

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    If Target.Column = 2 Then
        Target.Offset(0, -1) = Target.Row
    End If
End Sub
サンプルマクロは、オートナンバーを振りたいシートに作成します。