访问表单的Recordsource

时间:2016-01-22 19:45:39

标签: ms-access access-vba

我传入Openargs并尝试将其用作表单记录源的过滤器。这适用于具有相同设置的其他表单。但是出于某些原因,这并不适用于此。

Private Sub Form_Load()
Dim sSQL As String

  sSQL = "SELECT * " & _
         "FROM tblUserList " & _
         "WHERE NTID='" & OpenArgs & "';"
  RecordSource = sSQL

  If IsNull(Manager) Then
    MsgBox "Returned 0 records", vbCritical, "Problem"
    Exit Sub
  End If
End Sub

如果我单步执行代码,Openargs会正确传递... SQL字符串是正确创建的,我可以从Query构建器运行字符串,然后返回一条记录......正如我所料。

然而,当表单加载时,它会返回0条记录,显然这是一个问题......我在IF中找到了它,然后才能访问我的其余代码。

1 个答案:

答案 0 :(得分:0)

我无法弄清楚上述表格到底出了什么问题......一切都应该有效。如前所述,在DB的其他区域中使用了完全相同的设置。

最终我最终创建了一个全新的表单,并从上面的代码开始过滤表单的记录集,它工作得很好。我已经从头开始完全重建了表单,它正如预期的那样工作。

我最好的猜测是,在某种程度上,Access在表单的不可见部分中损坏了某些内容?

在处理Access和随机,时髦的问题时......重新开始。