Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access数据库-查询/SQL语句

Access关闭所有已打开的查询示例;批量关闭所有查询的代码

时 间:2024-07-04 10:36:53
作 者:麥田   ID:11  城市:上海  QQ:3002789054点击这里给麥田发消息
摘 要:请问一下Access关闭所有打开的查询的代码怎么写?Access关闭所有已打开的查询示例;使用For Each遍历所有打开的Access查询对象并关闭已打开的所有查询示例分享。
正 文:

一、学友问题描述:
爱好者:湘西--彭世春(762811235) 2024-07-04 09:07:09
请问一下Access关闭所有打开的查询的代码怎么写?有批量关闭所有查询的代码吗?

二、解决方案:
Access VBA 中,可以使用以下代码来关闭所有已打开的查询:
Sub CloseAllQueries()
    Dim obj As Object
    ' 遍历所有打开的 Access 查询对象
    For Each obj In Application.CurrentData.AllQueries
        ' 检查对象是否已打开
        If Application.SysCmd(acSysCmdGetObjectState, acQuery, obj.Name) = acObjStateOpen Then
            DoCmd.Close acQuery, obj.Name
        End If
    Next obj
End Sub

以上VBA代码的工作原理如下:
使用 Application.CurrentData.AllQueries 来遍历所有查询对象。
使用 Application.SysCmd(acSysCmdGetObjectState, acQuery, obj.Name) 来检查每个查询对象是否已经打开。
如果查询对象已经打开,则使用 DoCmd.Close acQuery, obj.Name 来关闭该查询。
将此代码粘贴到一个模块中并运行 CloseAllQueries 子程序即可关闭所有打开的查询。

附   件:
点击下载此附件

演   示:



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

常见问答:

技术分类:

相关资源:

专栏作家

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