Office中国论坛/Access中国论坛

标题: 如何定位记录? [打印本页]

作者: yrlxm    时间: 2004-3-20 17:51
标题: 如何定位记录?
根据条件日期=##定位记录

如果用下面语句
DoCmd.GoToRecord acDataForm, "Employees", acGoTo, 7
应如何根据条件日期=##获得记录编号7??????

[此贴子已经被作者于2004-3-20 10:06:14编辑过]


作者: zhengjialon    时间: 2004-3-20 20:04
记录编号是不固定随时都在变的。用FIND方法按字段值查找记录吧。
作者: yrlxm    时间: 2004-3-20 22:51
我需要进入窗体后要将符合条件的记录设定为当前记录.
作者: zhanguoru    时间: 2004-3-20 23:03
如果您肯定只有一條記錄滿足您的條件,應該可以用find@@,請指教謝謝!!
作者: sea.er    时间: 2004-3-21 00:21
如果不是"只有一條記錄滿足你的條件",那么第一条滿足你條件的记录会成为当前记录:
[attach]3966[/attach]
作者: Homeboy_xie    时间: 2004-3-21 02:25
标题: 我的也是类似问题
我的问题如下,也是相关gotorecord的.
我设计的目的是在主窗体的子窗体中点击记录,点"修改"按钮,弹出窗口能够定位到该条记录.但修改后要requery一次,这样子窗体的记录又回到第一条了.我现在的问题是想修改后子窗体的记录保持在刚才那条.我用的方法是先获取currentrecord,然后gotorecord到这条记录.但老是说子窗体没有打开.而此时子窗体一直处于活动状态的.
我以上的语句是加在弹出窗口的.gotorecord中窗口名称是forms.主窗体.子窗体.希望高手解答或提供更好的方法.
作者: yrlxm    时间: 2004-3-21 17:28
以下是引用sea.er在2004-3-20 16:20:49的发言:
如果不是"只有一條記錄滿足你的條件",那么第一条滿足你條件的记录会成为当前记录:
[attach]3966[/attach]


不行啊
作者: sea.er    时间: 2004-3-21 18:05
怎么不行
作者: yrlxm    时间: 2004-3-22 16:11
Private Sub Form_Open(Cancel As Integer)
DoCmd.FindRecord "00002", , True, , True
End Sub

可是打开窗体时,00001仍然为当前记录
作者: sea.er    时间: 2004-3-23 03:00
不可能啊,我这儿可以啊。
请大家帮忙测试一下
作者: yrlxm    时间: 2004-3-25 22:08
如图:
请注意记录号是1
[attach]4044[/attach]
作者: sea.er    时间: 2004-3-25 22:19
以下是引用sea.er在2004-3-22 18:59:52的发言:
不可能啊,我这儿可以啊。
请大家帮忙测试一下

作者: nu9i    时间: 2004-3-30 06:21
我这里也不行,我用的是xp
作者: LYP6160    时间: 2004-3-30 06:25
以下是引用sea.er在2004-3-22 18:59:52的发言:
不可能啊,我这儿可以啊。
  请大家帮忙测试一下


作者: YXH1969    时间: 2004-3-30 18:50
Private Sub Form_Open(Cancel As Integer)
    Dim rst As Recordset
    Set rst = Me.RecordsetClone
    rst.FindFirst [日期]= & "##"
    If rst.NoMatch Then
        Cancel = True
    Else
        Me.Bookmark = rst.Bookmark
        Cancel = False
    End If
End Sub




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