我有一个表单,我希望在单击submit按钮时刷新该表单。优选地,那些有缺省值的将被恢复,而那些没有缺省值的将为空。
submit按钮有一个附加的OnClick宏,检查以确保所有字段都已填充,如果是,则运行一个操作查询,将新行插入到表中。
所以在这个动作查询之后,我希望刷新发生。我尝试过研究,并遇到一些建议,建议使用VBA代码Me.Requery或Me.Refresh。我并不是百分之百的了解如何将其合并到宏中。RunCode命令不能识别我放入代码的函数,并且左上角的转换宏为VBA选项是灰色的。
我刚接触Access,只是看不到代码和宏的通信在哪里,如果有人能为我详细说明,我将非常感激。
发布于 2012-06-28 06:40:17
请将我的解决方案作为对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“是要执行的宏的名称。只要mac_1完成,ME.Refresh就会执行,并刷新页面。请确保将其括在正确的引号(")中,而不是双勾号('')。
发布于 2012-06-28 05:40:15
可以在VBA代码或宏中使用重新查询命令。听起来您使用的是宏设计器,因此您可以使用Requery宏操作而不是VBA。
只需在插入新数据后将其添加到宏中即可。

此宏操作允许您指定要重新查询的控件。该参数可以留空以重新查询活动对象的源。更多信息可以在here上找到。
编辑
为了回应您的评论,我认为您应该尝试使用SetProperty宏操作(更多详细信息here)。

我已经将这个宏附加到一个按钮单击事件上,并且来自名为txtInputValue的TextBox的值被清除。“值”字段保留为空,因为您希望从文本框中完全删除该值。
https://stackoverflow.com/questions/11235140
复制相似问题