如何在MS Access中创建两个字段中的任何一个?

时间:2015-12-07 09:21:31

标签: ms-access required-field

我是MS Access的新手,我有一个包含[name]和[company]字段的表单。我想让用户填写其中任何一个,但不一定都是。他们可以填写[姓名],[公司]或两者,但他们不能将两者都留空。

我如何实现这一目标?

2 个答案:

答案 0 :(得分:2)

您可以在vba中执行此操作:

创建一个在保存数据集之前运行的Eventhandler,并告诉它在不满足条件时取消更新:

Private Sub Form_BeforeUpdate(Cancel As Integer)
    If (isnull(me!name) and isnull(me.company) then
        msgBox "Give me more !"
        Cancel = True
    End If
End Sub

答案 1 :(得分:0)

在这种情况下,我建议使用数据宏(如果您使用的是Access 2010或更高版本)。优于 VBA 的优势在于数据宏在引擎级别运行,因此如果您有多个具有这些字段的表单,则不必将VBA复制到每个表单。这也消除了开始输入数据然后删除数据的问题。

转到表格设计,点击创建数据宏> 更改前并添加如果条件如下:

Data macro Before Update

您可以使用VBA捕获错误号1来执行某些操作。正如Access所说,错误号是用户定义的,没有任何访问意义。