是否可以将 RecordCount 与 Criteria 一起使用

Is it possible to use RecordCount with Criteria

this article 中,
它显示了一个比较 table .RecordCount 如何比该文章中使用的任何其他方法快得多,但它没有提到它是否可以使用有标准。

这就是我现在的问题。 .recordcount 可以与条件一起使用吗?例如,我只希望记录计数为 return 我发票中的记录数 table,其中状态等于 "PAID"。如果可以,怎么做?

目前我在记录集上使用 for loops 来执行此操作,但是如果 recordcount 可以与条件一起使用,那么看到该文章可能会提高性能

提前致谢

因为你的table是linked,使用任何方法,但DCount非常简单:

PaidInvoiceCount = DCount("*", "InvoiceTable", "[Status] = 'PAID'")

您提供的 link 中的方法仅适用于 TableDefs,并且速度非常快:

Public Function CountRecords()

    Dim lngCount    As Long

    Debug.Print Timer
    lngCount = OpenDatabase("d:\path\test.mdb").OpenRecordset("InvoiceTable").RecordCount
    Debug.Print Timer

End Function

您可以修改它以使用记录集:

Public Function CountRecords()

    Dim rs          As DAO.Recordset
    Dim lngCount    As Long

    Debug.Print Timer
    Set rs = OpenDatabase("d:\path\test.mdb").OpenRecordset("Select * From InvoiceTable Where [Status] = 'PAID'", dbOpenSnapshot)
    rs.MoveLast
    lngCount = rsFilter.RecordCount
    Debug.Print Timer

    rs.Close
    Set rs = Nothing

End Function

但它 运行 不会比 DCount 快。