在 Access 中运行 VBA 代码
Posted
技术标签:
【中文标题】在 Access 中运行 VBA 代码【英文标题】:Running a VBA code within Access 【发布时间】:2016-07-20 13:16:33 【问题描述】:我目前在 Access 2013 中工作。如果选择了按钮(是/否字段),我想锁定子表单中的两个字段,这两个字段包括恢复以前的位置和个人参考,是/否字段是 Resume Source Internal。
我的代码:
Private Sub Resume_Source_Internal_Click()
If [Resume Source Internal].Value = True Then
[Personal Reference].Enabled = True
[Resume Previous Location].Enabled = False
Else
[Personal Reference].Enabled = True
[Resume Previous Location].Enabled = False
End If
End Sub
我遇到的问题是,当我选择按钮(是/否)时,什么也没有发生。我之前以另一种形式运行过这段代码,它运行良好。有什么我可能错过的吗?个人参考和恢复以前的位置都是查找字段。
【问题讨论】:
你试过一步步编译吗?停止该子程序并继续前进。 我现在不会尝试。 同意/@TedoG。 - 一步一步调试总是当事情不正常时要做的第一件事。 我想通了,我只是直接通过我的子表单编写代码,为内部恢复源设置事件过程。 如果您自己想通了,请关闭/删除此问题,因为它实际上并没有广泛的基于用户的需求。 【参考方案1】:试试这个:
Private Sub Resume_Source_Internal_Click()
If [Resume Source Internal].Value = True Then
[Personal Reference].Enabled = True
[Resume Previous Location].Enabled = False
Else
[Personal Reference].Enabled = False
[Resume Previous Location].Enabled = True
End If
End Sub
请注意,在Else
中,我切换了False
和True
的值。正如您所写,您在If...Else
的两侧设置完全相同的值
【讨论】:
【参考方案2】:此代码对您有用吗 - 在属性表中将字段设置为启用和禁用。
当您单击按钮时,启用的属性将从 True 切换为 False,反之亦然。
Private Sub Resume_Source_Internal_Click()
Me.Personal_Reference.Enabled = Not Me.Personal_Reference.Enabled
Me.Resume_Previous_Location.Enabled = Not Me.Resume_Previous_Location.Enabled
End Sub
【讨论】:
以上是关于在 Access 中运行 VBA 代码的主要内容,如果未能解决你的问题,请参考以下文章
在文件夹中的所有 Access 文件中运行 Access VBA
使用 Access 2007 查询向导创建 SQL,仍然无法在 VBA 中运行