在 Access 中是不是可以从全局函数中关闭变量?

Posted

技术标签:

【中文标题】在 Access 中是不是可以从全局函数中关闭变量?【英文标题】:In Access is it possible to close a variable from a global function?在 Access 中是否可以从全局函数中关闭变量? 【发布时间】:2017-08-30 22:07:23 【问题描述】:

在我的访问程序中,我会在用户每次关闭程序时询问他们是否要保存。这可以通过任何形式完成。当我想创建一个全局函数以减少重复代码时,问题就出现了。这将如何完成?在类模块中? (这是怎么设置的??)

如果有帮助我的代码如下;

If Me.Dirty Then
 Dim LResponse As Integer

 LResponse = MsgBox("You have unsaved changes. Do you really want to close the database", vbYesNo, "Close form")

 If LResponse = vbYes Then
  DoCmd.Close
  Cancel = True
 End If
Else
 DoCmd.CloseDatabase
End If

【问题讨论】:

我会问与您之前的问题相同的问题:(1)您的班级是做什么的? (2) 它与用户所在的表单有何关联? (3) 代码的哪一部分试图调用类的Close 函数? (我从评论中感觉到,当用户尝试关闭表单时,您正在尝试关闭类。) (4) Close 函数实际上是在一个类中,还是只是在一个标准代码模块中?跨度> 【参考方案1】:

默认情况下,绑定表单会在关闭时保存更改的数据,因此您不需要所有这些。

因此,您只需要一行代码:

DoCmd.Quit

如果您希望系统地向表单或控件添加功能或行为,请使用 WithEvents

可以在here找到一个例子。

【讨论】:

以上是关于在 Access 中是不是可以从全局函数中关闭变量?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 VBA 在 Access 中关闭单个表单实例?

如何在 Access 2000 中关闭报告中的单词自动更改,如高度、宽度和计数

在 SWIFT 中关闭 segue 之前保存变量

在 WebRTC 库中关闭视图控制器时出现 EXC_BAD_ACCESS 错误时崩溃

从服务中关闭进程而不杀死进程

在alertview中选择取消按钮时如何从数组中关闭所有alertview?