Ms access 没有VBA的表单定制

Ms access 没有VBA的表单定制,ms-access,ms-access-2013,Ms Access,Ms Access 2013,我们正在用Access 2013重建资产数据库。我们有一个带有主键(资产序列号)的表和22个其他字段。我们正在设计一个与表一起使用的表单,这样我们就不会手动编辑表。表中不存在稍后解释的“状态:”字段;这是一种显示记录是否存在的用户友好方式 最终目标是创建一个能够处理两种情况的表单。用户将输入PK并按tab键。然后: 如果PK存在,它将从其他22个字段中提取信息,并将其放入表单上的字段(1:1),并将“状态:”更新为“现有” 如果PK不存在,它会将“状态:”更改为“新建”,并使所有字段为空 表

我们正在用Access 2013重建资产数据库。我们有一个带有主键(资产序列号)的表和22个其他字段。我们正在设计一个与表一起使用的表单,这样我们就不会手动编辑表。表中不存在稍后解释的“状态:”字段;这是一种显示记录是否存在的用户友好方式

最终目标是创建一个能够处理两种情况的表单。用户将输入PK并按tab键。然后:

  • 如果PK存在,它将从其他22个字段中提取信息,并将其放入表单上的字段(1:1),并将“状态:”更新为“现有”
  • 如果PK不存在,它会将“状态:”更改为“新建”,并使所有字段为空
表单上的大多数字段都是组合框。将有两个文本字段和一个日期/时间字段

一旦用户完成表单并进行了任何必要的更改,底部将有一个“保存”按钮,将表单中的任何内容写入PK指示的行


我在Access 2013的表单PK字段中找到了LostFocus()事件的部分解决方案。我对MS Access几乎没有经验,对DBA有一定的经验,对VBA编程没有经验。我确信这个解决方案是可以做到的,我的问题是:除了硬编码解决方案,它还能以其他方式解决吗?我也四处寻找窗体的构建,但是我找不到任何我们需要的东西,所以如果有一个工具可以完成,这是可以接受的。

< p>你可以考虑一个包含A的表单。基本上,您将设计一个包含PK输入框和子表单的表单。当用户点击tab(或“搜索”按钮)时,将运行一个查询来搜索表并在子窗体中显示该记录,否则您可以插入一条新记录。您可能需要使用一些查询和宏将其链接在一起,但这可以不用代码完成