即効テクニック |
特定の列にオートナンバーを振る場合、ワークシートの変更された範囲が渡される「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
サンプルマクロは、オートナンバーを振りたいシートに作成します。