如何使用“不在列表中”填充查找表

时间:2018-08-22 15:44:29

标签: database ms-access access-vba ms-access-2016 ms-access-forms

表1:我的一般信息表

  • 组织:默认为“不适用”但从...中提取值的查找/关系字段。

表2:组织列表

  • 没有ID字段,仅是组织的名称(按照添加顺序排列)

我的数据输入表单有一个用于组织的组合框,当我添加以前未添加的组织时,我希望它可以更新。我知道我应该使用“不在列表中”事件,但是我不知道如何使用此事件来更新“组织”列表。我该怎么做?

1 个答案:

答案 0 :(得分:0)

确保组合框的Limit To List属性设置为Yes

添加一个On Not In List事件,以便在出现新值时将其插入源表:

Private Sub MyComboBox_NotInList(NewData As String, Response As Integer)

    With DoCmd
        .SetWarnings False
        .RunSQL "INSERT INTO [Organization List](Organizations) VALUES ('" & NewData & "')"
        Response = acDataErrAdded
        .SetWarnings True
    End With

End Sub

编辑...几乎忘了...在我回答之前,您尝试了什么? :)

编辑2 ...给出的示例是一个字符串值。如果'是数字值,则从New Data的任一侧除去{{如果是组织名称,则可能不行)。

编辑3 ... INSERT SQL只是将数据放入表中的一种方法。您可能更喜欢RecordSet.Add.Update方法。