设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1500|回复: 5
打印 上一主题 下一主题

[窗体] 窗口的快速查询栏VBA

[复制链接]
跳转到指定楼层
1#
发表于 2008-11-15 06:17:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这两天在攻坚Access,想简化操作。
我正在研究新课题,如何将查询条件在窗口输入之后,在同一个窗口中实时更新记录。
只是在编译器里,总是报错:"无法使用FindRecord"。

各位高手,我是从2007Access宝典里样例程序里纯抄下来放进去,在样例程序里挺好用。
界面见附件,事件过程的VBA如下。
Private Sub cboQuickSearch_AfterUpdate()
        txtContactID.SetFocus
        If Not IsNull(cboQuickSearch) Then
        DoCmd.FindRecord cboQuickSearch
    End If
End Sub

而我的基本相同,只是改写了变量的名字,如下:
Private Sub cboQuickSearch_AfterUpdate()
Dim TempID As Integer
    TxtID.SetFocus
    If Not IsNull(CboQuickSearch) Then
        TempID = Me.CboQuickSearch
       DoCmd.FindRecord TempID
    End If
End Sub
当我在运行时,在DoCMD.Findrecord处会报错,说“当前无法使用查找替换命令”。我认为是宏的运行限制,但是我已经把文件所有位置设为安全位置,同时,也在信任中心中更改了安全级别。不知道有没有别的原因,请赐教。

[ 本帖最后由 WANGDUYU 于 2008-11-15 06:23 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2008-11-15 08:39:12 | 只看该作者
DoCmd.FindRecord TempID
应该是数据表窗体获得焦点才能用吧?
3#
 楼主| 发表于 2008-11-15 09:47:23 | 只看该作者

谢谢UI

可是这段代码本身就这个窗体自己的Private的代码,
TxtID.SetFocus,已经把焦点选在数据框里了。
4#
发表于 2008-11-15 13:52:55 | 只看该作者
查找命令最好在宏或菜单中执行,这样按钮就不会得到焦点
否则好象会提示无法使用这命令
5#
 楼主| 发表于 2008-11-16 10:55:04 | 只看该作者
谢谢元老级UI的指点,继续攻关。有问题再来讨论。
6#
 楼主| 发表于 2008-11-17 09:36:06 | 只看该作者
最终实验成功了,原来是自己摆了一个乌龙。

在一楼提到的窗体,是建立在一个查询上的,而不是表。后来改成数据表为控件来源,就一切正常了。

基本概念不清晰,就有这么严重的后果。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-9-22 13:29 , Processed in 0.079204 second(s), 31 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表