Office中国论坛/Access中国论坛

标题: [求助]怎樣去尋找一個指定的記錄 [打印本页]

作者: HG    时间: 2002-7-20 18:14
标题: [求助]怎樣去尋找一個指定的記錄
問:一個窗體是幫定在某一數據源上。現在在窗體上新增一個文體框,
在文本框的內容改變時,尋找此窗體的記錄為字本框中鍵入的值
(文本框中鍵入的值為當前窗體數據源的主鍵)
作者: HG    时间: 2002-7-20 18:42
說像EDIT菜單中的FIND功能一樣,但又不想彈出一個FIND對話框,
而用哪個文本框中實現,各位有什麼高見請指教。
docmd.findrecord 和docmd.gotorecord語句好像可以在這裡用,但我試了試不行,
可能是我不對用這兩個語句吧,請高手指點。多多謝。
作者: HG    时间: 2002-7-21 01:57
标题: 各位高手,請不要吝色,解決不了,給點意見。多多謝。
這個問題好像很少有人研究的嗎?關鍵是在同一窗體上查詢,在同一窗體上應立即看到變化,
而窗體是邦定的,然自建的文本框的用於查詢的文本框是非幫定的,如何在自建的文本框鍵入內容(主要是窗體數據源的主鍵)然後立即關聯到窗體主鍵上,讓窗體數據發生改變。
請大家多指點。多謝!


[此贴子已经被HG于2002-7-20 17:56:34编辑过]


作者: huanghai    时间: 2002-7-21 03:19
用过滤行不行?

或者把自己的设想做成一个例子,写上要求,这样比较好发挥大家的动手能力,不然全是空手道,难呀:)
作者: zhuyiwen    时间: 2002-7-21 03:25
以下是引用huanghai在2002-7-20 19:19:18的发言:
用过滤行不行?

或者把自己的设想做成一个例子,写上要求,这样比较好发挥大家的动手能力,不然全是空手道,难呀:)


同感![em26]
作者: freemanager    时间: 2002-7-21 04:34
Private sub 查找按钮_Click
Dim rs as recordset   '窗体记录集只能是DAO的。
set rs=me.recordset.Clone  
rs.FindFirst "[字段名]=值"    '这个跟Lookup的语法一样,可以引用控件值
If rs.NoMatch then
    Msgbox "没找到!"
else
    Me.BookMark = rs.BookMark  '将窗体书签移动至记录集书签
end if
End sub
作者: zhuyiwen    时间: 2002-7-21 04:55
经典做法![em26]
作者: HG    时间: 2002-7-21 22:20
多謝各位:因小弟是個VBA初學者,freemanager,和各位的方法太過於復雜,理解不透
所以自行解決了,現公布出來,讓各位見笑了。
Me.emp_sn.SetFocus ‘先在要定位的字段上設置集點
DoCmd.FindRecord Me.find_emp_sn, , True, , True ‘用findrecord宏來定位
Me.find_emp_sn.SetFocus ’然後在轉移焦點為原位置

作者: HG    时间: 2002-7-23 22:46
各位:比如上例:
怎樣來判斷docmd.findrecord的返值哪?如怎樣斷斷它沒有找到記錄哪?




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