1

我有一个表单,我想在单击提交按钮时刷新。最好是那些具有默认值的将被恢复,而那些没有的将是空白的。

提交按钮有一个附加的 OnClick 宏,它会检查以确保所有字段都已填充,如果是这样,则会运行将新行插入表中的操作查询。

因此,在此操作查询之后,我希望进行刷新。我曾尝试研究并遇到建议使用 VBA 代码 Me.Requery 或 Me.Refresh 的建议。我不是 100% 知道如何将其合并到宏中。RunCode 命令无法识别我放入代码的函数,并且左上角的将宏转换为 VBA 选项是灰色的。

我是 Access 的新手,只是没有看到代码和宏的通信在哪里,如果有人可以为我详细说明,我将不胜感激。

4

2 回答 2

1

Requery 命令可以在VBA代码或宏中使用。听起来您正在使用宏设计器,因此您可以使用Requery宏操作而不是VBA.

插入新数据后,只需将其添加到宏中即可。

在此处输入图像描述

此宏操作允许您指定要重新查询的控件。该参数可以留空以重新查询活动对象的来源。更多信息可以在这里找到。

编辑

针对您的评论,我认为您应该尝试使用SetProperty宏操作(更多详细信息请点击此处)。

在此处输入图像描述

我已将此宏附加到按钮单击事件,并清除了名为txtInputValue的 TextBox 中的值。值字段留空,因为您想从文本框中完全删除值。

于 2012-06-27T21:40:14.637 回答
1

请考虑我的解决方案作为对 VBA 的简要介绍。如果你关心学习这门语言,你会发现几乎没有什么是你做不到的。

在您的提交按钮属性中,应该有一个“事件”选项卡。在此选项卡中,应将 On Click 设置为 [Event Procedure]。单击右侧的三个点按钮,它将启动 VBA 编辑器。

在 Private Sub 和 End Sub 行之间,您需要的只是这些代码行:

DoCmd.RunMacro ("Mac_1")
Me.TextBox1.Value = "Null"
Me.CombBox1.Value = "Null"
Me.Refresh

MsgBox "Your Save Was Successful.", vbOKOnly, "Saved"

“Mac_1”是您要执行的宏的名称。ME.Refresh 在 mac_1 完成后立即执行,并将刷新页面。请务必将其括在正确的引号 (") 中,而不是双引号 ('')。

于 2012-06-27T22:40:17.200 回答