Access数据库培训
网站公告
·Access快速平台QQ群号:277422564    ·Access快速开发平台下载地址及教程    ·欢迎添加微信交流账号:Accessoft7    ·如何快速搜索本站文章|示例|资料!    
您的位置: 首页 > 技术文章 > 源码示例

[示例]删除记录后如何定位上一条记录

时 间:2008-11-03 09:23:22
作 者:竹笛   ID:8  城市:上海  QQ:2851379730点击这里给张志发消息
摘 要:原理:在鼠标单击行时,就选定了一条记录(假定为XL006),这里记录下其上一条记录的编号(XL005),然后用Acchelp_FindStrRecord函数来定位记录。
正 文:

示例下载在:http://www.accessoft.com/bbs/showtopic.asp?ID=531&BoardID=23 ,参考 “学历代码”中的删除功能

第一步:在模块中声明全局变量:
Public g_AcchelpSelectStrID_Del As String '删除记录后 记下需要定位的ID
Public IsDelete As Boolean


第二步:在Public Sub btnDel() 子程序中,增加得出下一条记录的代码:

   '得出上一条记录的编号
        g_AcchelpSelectStrID_Del = "XL" & Format(Val(Mid(g_AcchelpSelectStrID, 3)) - 1, "000")
        '设置是因为删除而定位的条件
        IsDelete = True

第三步:在 Private Sub Form_Timer() 计时器子程序中增加代码:

'-------------------------------------
    '如果是删除,数据刷新后就定位到上一条记录
    If IsDelete = True Then
        Acchelp_FindStrRecord (g_AcchelpSelectStrID_Del)
        IsDelete = False
    Else
        '如果是修改,数据刷新后就定位到所修改的记录
        Acchelp_FindStrRecord (g_AcchelpCurrentNumID)
    End If

第四步:在 Private Sub xlid_GotFocus() 子程序中增加代码:
    '----------开始----------------------------------
    '1秒钟后启动计时器,以定位到删除编号的上一条记录
    If IsDelete = True Then
        Me.TimerInterval = 1000
    End If
    '-----------结束---------------------------------



Access软件网官方交流QQ群 (群号:115120150)       access源码网店

最新评论 查看更多评论(1)

2013/4/25 11:36:29杨健
这个实例在解决的实际问题的时候还是有缺憾的,因为你删除记录的上一条记录主键值不一定是目前要删除的记录的主键减去1有可能需要减2,3或其他的值。要是能定位当前记录的绝对位置,然后删除后返回该记录的上一条记录的绝对位置就好了。

发表评论您的评论将提升作者分享的动力!快来评论一下吧!

用户名:
密 码:
内 容:
 

常见问答

技术分类

相关资源

最新帖子

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助