使用VBA跟踪表单更新

时间:2014-07-16 18:34:27

标签: vba ms-access access-vba

我在这里工作了一段时间,虽然我还是MS Access的新手,但我知道如何编写一些基本的东西。然而,我正在努力做的事情并不是那么需要,因为我想添加它只是为了使数据库更容易使用。

我现在所拥有的是一个表单,允许用户输入名字,姓氏(UserID将分别连接姓氏和名字)和密码,但这就是:如果是用户选择在保存之前关闭表单,我已经成功实现了On Unload事件,询问用户是否要在关闭程序之前保存所述信息。问题是,表格随时关闭。有没有什么方法可以跟踪保存记录按钮,或者能够跟踪表单本身的任何类型的更新?

1 个答案:

答案 0 :(得分:0)

我可以想到两种可能的解决方案(不是任何优先顺序):

  1. 如果表单就像你说的那样简单(只有4或5个控件),那么当它加载时将信息保存在某些状态"在你的形式。然后,在Form_Unload事件中,检查表单内容是否与您所在州的内容不同。如果是,则提示用户是否要保存数据,否则继续执行任何操作,因为没有更改。当然,如果用户在任何时候按下"保存记录"按钮,然后您还需要更新您的状态以包含最新保存的信息。

  2. 另一种方法是为您感兴趣的每个控件(用户名控件,密码控件等)保留一个干净/脏标志,并且用户可以输入数据。大多数/所有控件都有一个事件来跟踪它们内部的数据是否已更改。因此,如果在每个控件中发生任何编辑,请使用该事件并将脏标志设置为True。当用户按下"保存记录"按钮,然后标志应该变得干净,因为信息已保存并且是最新的。同样,在Form_Unload事件中,检查标志,如果有任何脏标签,则提示用户保存,否则继续执行任何操作。