如何在VBA中将SQL查询结果记录保存为整数

时间:2019-03-18 14:25:27

标签: sql vba oracle ms-access

我在Access 2016中有一个查询,我想在VBA模块中将记录号保存为整数。例如, Query1 有10条记录应另存为:

int query1 = 10

我怎么办?

2 个答案:

答案 0 :(得分:1)

您可以使用DCount()函数:

Public Sub Count_Records()

    Dim i As Integer

    i = DCount("*", "your_query_name")

    Debug.Print i


End Sub

或者使用带有COUNT()和记录集的SQL查询:

Public Sub Count_Records_2()

    Dim RST As Recordset
    Dim i As Integer

    Set RST = CurrentDb.OpenRecordset("SELECT COUNT(*) AS CNT FROM your_query_name")
    i = RST!CNT

    Debug.Print i

End Sub

答案 1 :(得分:0)

DCount可能是最易读的方法,但是为了提供另一种选择,您还可以使用记录集的RecordCount属性,例如:

Sub CountRecords3()
    Dim i As Long
    With CurrentDb.OpenRecordset("Your_Query_Name")
        If Not .EOF Then
            .MoveFirst
            .MoveLast
            i = .RecordCount
        End If
        .Close
    End With
End Sub