Querydefs运行时错误3265:在此集合中未找到项



在Access 2007中,我试图发送查询结果,但是,我不断收到错误"运行时错误'3265':项目未在此集合中找到"。错误出现在以下行:

Set qry = CurrentDb.QueryDefs(ReportQueryName)

我已经检查了字段的拼写,我已经试着用Tools>References来确保我有正确的库。

这是我当前的代码:

Private Sub Command202_Click()
Dim qry As DAO.QueryDef
Dim strSQL As String
Dim ReportQueryName As String
ReportQueryName = "ReportEmail"
Set qry = CurrentDb.QueryDefs(ReportQueryName)
strSQL = "SELECT [ID], [title] FROM Cases WHERE ID = " & Me.ID
qry.SQL = strSQL
DoCmd.SendObject acSendQuery, "ReportEmail", acFormatXLSX, "email@address.com", ..., , False
End Sub

你不能使用QueryDefs来创建一个新的查询-你必须使用CreateQueryDef来代替:

Private Sub Command202_Click()
    Dim qry As DAO.QueryDef
    Dim strSQL As String
    Dim ReportQueryName As String
    ReportQueryName = "ReportEmail"
    strSQL = "SELECT [ID], [title] FROM Cases WHERE ID = " & Me.ID
    Set qry = CurrentDb.CreateQueryDef(ReportQueryName,strSQL)
    DoCmd.SendObject acSendQuery, "ReportEmail", acFormatXLSX, _
    "email@address.com", ..., , False
End Sub

有时您的新查询不会立即显示在Access窗口中。

如果你想要,你可以使用:

Application.RefreshDatabaseWindow

最新更新