0

这是复杂的。我对 Access 不太熟悉,而且我是一名程序员(意思是,我可能会让自己变得更难,而没有看到“简单”的答案)。

所以让我们考虑(示例):我们有一个图书馆数据库。我有一本书的特定副本。我的书可能有几种状态:已签出、在架上、已销毁、闻起来很奇怪/很粘/无法使用……我需要/在 Access 中有两种表格。一个用于我的书的基本信息,另一个用于实际更新状态。随着状态的变化,需要记录大量数据,因此需要单独的表格。书单本身只包含基本信息和出租历史的小子表格;书的形式需要包括当前状态。我的实际状态表有一个 statusid、bookid、timestamp。

现在......因为我不知道 Access 会有问题......我将我的书和状态表格都未绑定,并用来自 VBA 的记录/查询填充它们。但是当我试图将两者联系起来时,它对我大喊大叫;“未绑定”它告诉我。我认为这很好,并将查询移到实际的前端访问查询部分(左侧)并移出 vba 并适当地绑定我的表单。但现在。它说我的记录集不可更新。我假设是因为我使用了连接和嵌套选择语句等来获取本书的当前状态。我只需要能够修改这些文本字段,我就可以自己编写插入/更新。我在网上发现了一些东西说要创建一个表,但我也读到这在多用户环境中不起作用。

所以……我该怎么办?

4

1 回答 1

0

如果我对您的理解正确,您的问题是您在主窗体中有一个复杂的查询,并且想要打开第二个表单来更新该查询的一个基础表,然后想要更改新打开的表单中的当前记录并保存它然后重新查询原始表格?我知道你是一名程序员,所以在我看来,最通用的方法是:主窗体上的按钮,它以模式模式打开具有正确记录的新窗体(确保其余的原始窗体代码在模式之后执行)窗体已关闭),在模态窗体中施展你的魔法,然后重新查询主窗体。

尝试这样的事情:

Private Sub myButton_Click()
  DoCmd.OpenForm "myEditForm", acNormal, , ID = 4, acFormEdit, acDialog
  me.requery
End Sub
于 2012-05-08T08:58:54.770 回答