●概要●
レコードセットのレコード数を取得するには、ADODB.RecordsetオブジェクトのRecordCountプロパティを利用します。
構文 オブジェクト.RecordCount
設定項目 内容
オブジェクト ADODB.Recordsetオブジェクト
次のサンプルは、ADOを利用して、Accessデータベースにあるテーブルのレコード数を取得します。なお、このサンプルを実行するには、「Microsoft ActiveX Data Objects x.x Library(x.xはバージョンによって異なります)」に参照設定する必要があります。
●サンプル●
Sub Sample()
Dim AdoConnection As ADODB.Connection
Dim TableName As String
TableName = "T_Master"
Set AdoConnection = New ADODB.Connection
AdoConnection.Open "Provider=Microsoft.Jet.OLEDB.4.0;" _
& "Data Source=" & ThisWorkbook.Path _
& Application.PathSeparator & "SampleDB.mdb"
With AdoConnection
With New ADODB.Recordset
.Open TableName, AdoConnection, adOpenKeyset
MsgBox "レコード数は " & .RecordCount & "件です"
.Close
End With
.Close
End With
Set AdoConnection = Nothing
End Sub
●ポイント●
ADODB.RecordsetオブジェクトをOpenメソッドを使って開き、その後、RecordCountプロパティを利用して、開いたレコードセットからレコード数を取得する場合、指定するカーソルタイプに注意が必要です。指定するカーソルタイプは、キーセットカーソル(adOpenKeyset)か静的カーソル(adOpenStatic)を指定しなくてはなりません。