来自查询的连续字段填充在表中的另一个字段中

时间:2013-08-06 02:31:21

标签: combobox concatenation ms-access-2013

我是Access的新用户,我正在使用Access 2013.我有一个名为Employees的表,其中包含员工First_NameLast_Name,然后是一个具有{{1}的组合框}}。我有一个查询可以提取Full_NameFirst_Name并将其连接到Last_Name字段。

现在,当我转到我的表单并添加新员工并点击保存员工表中的字段Full_Name时,不会将Full_NameFirs_Name放入该字段。我不确定我错过了什么。在我把新员工放进去后,我必须前往Last_Name字段,然后前往Full_Name所在的下拉列表。我希望自动将Full_Name放在那里。

1 个答案:

答案 0 :(得分:0)

我看到有两种可能性:

甲。表已更新,但表单不刷新。

访问表单通常不会立即刷新数据,这可能就是问题所在。

  1. 如果您添加记录,请关闭表单并重新打开表单。组合框是否正确显示?
  2. 尝试添加记录并点击“保存”。然后按键盘上的Shift-F9键。这会使组合框正确显示吗?
  3. 如果是,那就是问题所在。您需要在VBA代码中为“保存”按钮添加requery or refresh method。 (根据你所写的,我假设那里有VBA代码。)

    B中。该表未更新。

    如果上述测试不起作用,则表明表中的字段尚未更新。当您在组合框中选择Full_Name时,您手动执行此操作。在这种情况下,您需要修改按钮的代码。

    关于名字和姓氏:

    最好没有全名,姓氏名字的字段 - 这意味着你要存储两次名字,这会导致你的情况出现问题。

    典型的安排是存储名字和姓氏。您可以通过连接这两个来获取全名,您可以在查询或表单中执行这两个操作。

    或者,您可以将全名存储在一个字段中。要获取名字和姓氏,您可以使用函数将它们分开 - 再次,在查询或表单中。这种情况不常见,因为灵活性较差。但它仍然避免了两次存储相同数据所产生的问题。

    哪一个更好?这完全取决于您的需求。