ACCESS サブフォーム 新規行追加時に自動的に行番

サブフォーム(ダイナセット)で、末尾の新規追加行の編集を開始したときに、行番フィールドに自動的に採番したい場合は、フォームの「挿入前」イベントを使う。

Private Sub Form_BeforeInsert(Cancel As Integer)

‘追加時に行番(最大値)を振る
Dim rst As Object, lastno As Double
Set rst = Me.RecordsetClone
If rst.RecordCount = 0 Then
lastno = 0
Else
lastno = rst.RecordCount
End If
rst.AddNew
rst![年] = Parent!cboNEN
rst![月] = Parent!cboMONTH
rst![会社C] = Parent!cboCOM

rst![行番] = lastno + 1

rst.Update
rst.Close

End Sub