经典算法
Access在指定位置插入记录
2017-06-07 17:00:32

Access不是Excel,所有记录都是插入到最后面然后根据关键字排序。如果需要自定义记录顺序,可以增加一个排序字段(最好不要调整关键字字段),通过手工调整排序字段序号,也可以通过插入记录获取数据表中当前选定记录的排序字段序号用程序进行处理,并以此字段排序,把插入记录显示在适当的位子。

下面一段代码放在窗体的成为当前事件中,可实现数据表在当前记录前插入新记录。条件是要有“序号”字段并以此字段排序:Private Sub Form_Current()    If Me.序号 <> 0 Then        If Me.CurrentRecord <> 1 Then Me.Tag = Me.序号    Else        DoCmd.SetWarnings False        DoCmd.RunSQL "UPDATE tem SET tem.序号 = [序号]+1 WHERE tem.序号>" & (Me.Tag - 1)        DoCmd.RunSQL "INSERT INTO tem(序号) VALUES (" & (Me.Tag) & ")"        Me.Requery        Me.RecordsetClone.FindFirst "序号=" & (Me.Tag)        Me.Bookmark = Me.RecordsetClone.Bookmark    End IfEnd Sub