Office中国论坛/Access中国论坛

标题: [分享]在指定位置插入记录 [打印本页]

作者: Trynew    时间: 2008-6-6 12:40
标题: [分享]在指定位置插入记录

accesss不是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 If
End Sub
[attach]56851[/attach]

作者: chenwm1973    时间: 2008-6-6 14:13
学习[:50]
作者: tmtony    时间: 2008-6-6 14:21
Trynew好久未出山了, 别来无恙...
一上来就出精品了
我刚好最近也在为这个烦恼, 也是使用近似的方法来实现, 客户就是拿excel 来说Access, 没辙
作者: Trynew    时间: 2008-6-6 16:59
站长好!近来确实是有好多不顺心的事,但汶川大地震把我震醒了,特别是“可乐男孩”那豁达及乐观的表现,让我觉得我这点鸟事简直就自寻烦恼:]
如果我的帖子能够让几个网友得到启发,就是我最大的欣慰。
再次向站长、朱总及那些在此坚持的老朋友致敬[:11] ,是你们的坚持,才让我们有这么好的交流平台!
作者: t小宝    时间: 2008-6-6 17:04
受教受教[:24]
作者: fswxs    时间: 2008-6-6 20:41
要用菜单上的插入新记录[:31]
作者: 5988143    时间: 2008-6-6 21:31
前辈作品!学习了![:50]
作者: goto2008    时间: 2008-6-7 01:01
[:24]
作者: tmtony    时间: 2008-6-7 01:50
原帖由 Trynew 于 2008-6-6 16:59 发表
站长好!近来确实是有好多不顺心的事,但汶川大地震把我震醒了,特别是“可乐男孩”那豁达及乐观的表现,让我觉得我这点鸟事简直就自寻烦恼:]
如果我的帖子能够让几个网友得到启发,就是我最大的欣慰。
再次向站长 ...

希望不顺心的事尽快过去. trynew兄的实例 是精品中的精品, 多年来 都是人见人爱.
许久未见上来, 但看了新作品,宝刀更锋.
作者: Trynew    时间: 2008-6-7 09:22
问:用ACCESS创建表时数据类型中有自动编号这一选项,但是是无法编辑的。我现在需要制作一个窗体在插入记录时自动为记录添加序号,并且能够实现通过指定序号的方法将后加的记录插入到先前已有的记录之间。
答:把一楼程序中的3处Me.Tag都加上1,改为以下程序即可。
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 )
        DoCmd.RunSQL "INSERT INTO tem(序号) VALUES (" & (Me.Tag+1) & ")"
        Me.Requery
        Me.RecordsetClone.FindFirst "序号=" & (Me.Tag+1)
        Me.Bookmark = Me.RecordsetClone.Bookmark
    End If
End Sub
作者: wang1950317    时间: 2008-6-7 11:15
[:50] [:50] [:50] [:50] [:50] [:50] [:50] [:50] [:50]
作者: fenghui8818    时间: 2008-7-10 16:26
标题: 境界在提高
我喜欢
作者: 陈大林    时间: 2008-12-27 15:00
标题: dddddddd
ddddddddddddddddddddddddddddddd
作者: XWQ2000    时间: 2008-12-27 23:30
[:50]
作者: aalons    时间: 2009-2-16 01:45
各国国歌
作者: yanwei82123300    时间: 2009-3-6 12:13
谢谢!多多学习!谢谢!多多学习!
作者: towerman    时间: 2009-3-7 08:28
  !
作者: ygzhx    时间: 2009-3-7 09:09
好东西
作者: czsjw    时间: 2009-6-6 21:52
每条河流都有自己的故事
作者: chenyingfengsx    时间: 2009-7-9 16:27
ddddddddd
作者: 鱼儿游游    时间: 2009-10-24 21:02

作者: cashiba    时间: 2009-10-25 10:59
学习了,谢谢楼主
作者: 13601812106_01    时间: 2009-10-25 20:19
fcdddd
作者: wufeng980114    时间: 2010-2-8 20:54
好DD啊,我正遇到这样的问题,谢谢了
作者: hr0713    时间: 2010-4-13 08:38
学习,学习
作者: xie62    时间: 2010-5-27 15:10
收下了
作者: xlyw    时间: 2010-5-28 16:32
学习学习再学习
作者: ltaozy    时间: 2010-6-11 10:33
正在找相关的教材,谢谢楼主了
作者: yxj_leo    时间: 2010-6-11 21:51
学习学习
作者: wdq    时间: 2010-6-13 10:52

作者: fcghw    时间: 2010-7-8 02:32
前辈作品!好
作者: 82077802    时间: 2010-7-8 07:19
学习了
作者: c101    时间: 2010-7-8 22:06
学习学习
作者: yihesmxx    时间: 2010-7-12 13:24
学习学习
作者: owea    时间: 2011-5-22 20:50
学习下
作者: huangxiuwen    时间: 2011-12-27 12:50
学习
作者: weiyou333    时间: 2012-2-16 11:52
学习
作者: aksufyy    时间: 2012-2-19 00:06
厉害
作者: sunwrsun    时间: 2015-6-7 00:22
看看
作者: fjh    时间: 2015-7-20 16:09
看看
作者: LeeTien    时间: 2016-1-27 14:23
学习了,学习
作者: liumporite    时间: 2016-11-11 12:47
看看 谢谢
作者: gxstudent    时间: 2016-11-25 15:55
学习




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3