如何根据第一个表单中的信息打开第二个表单?

时间:2011-08-09 19:35:42

标签: ms-access vba ms-access-2007

有人可以帮我解决下面的IF语法吗?

这就是我们需要做的事情:

  1. Form1上添加新记录;
  2. 点击Form1上的按钮以打开Form2;
  3. Form2打开时,它包含来自Form1的信息。
  4. 所以,我将其添加到Properties/OnDirty/CodeBuilder

    If me.Dirty = True then 
      Me.Dirty = false
    Docmd.OpenForm "Form2",,,"EvalID = " & me!Eval_ID 
    

    输入数据后,Docmd行会创建

      

    运行时错误3075,语法错误(缺少运算符)... EvalID

    Form1中,密钥为Eval_ID,而在Form2中我有EvalID(但不是密钥)。

    有什么建议吗?

1 个答案:

答案 0 :(得分:1)

在我看来,这里发生了一些事情。它还有助于确认一些信息:

  1. 这是指MS Access表单还是其他一些VBA驱动的表单?
  2. 这两种表单都绑定到表格或可编辑的查询吗?
  3. 这可能不是导致语法错误的问题。解决这个问题应该很简单。在该位置的代码中放置一个断点。此时,在基于两个表的新查询的SQL视图中,在单词“WHERE”之后复制结果字符串(例如EvalID = 7)。预览查询以使用该表达式调试问题的原因。