访问VBA以修改表单中的文本输入

时间:2013-07-07 22:17:06

标签: access-vba

如果用户输入RED,自动将表单字段更改为黄色的正确步骤是什么?

我会尝试一个BeforeUpdate事件,但文档说:

如果您尝试修改在事件过程中触发BeforeUpdate事件的控件中包含的数据,则会发生运行时错误。

这似乎打败了目标。

示例:

Private Sub color_BeforeUpdate(Cancel As Integer)  
    If color = "YELLOW" Then 
        color = "RED"  
    End If  
End Sub

2 个答案:

答案 0 :(得分:0)

您应该使用AfterUpdate()事件。

另外,我建议你使用一个变量。这是一种避免混淆并保持代码清晰,可重用的方法。

strColor = Me!Color.Value

答案 1 :(得分:0)

您可以使用LostFocus事件。

Private Sub color_LostFocus()
    If color = "RED" Then
        color = "YELLOW"
    End If
End Sub