RecordCount プロパティ
Recordset オブジェクトのレコード数を取得します。
【書式】
<取得>
long = object.RecordCount
引数・戻り値
- object ・・・ 対象となる Recordset オブジェクトを指定します。
- long ・・・ Recordset のレコード数を示す長整数型(long)の値を取得します。ただし、レコード数がわからない場合、プロバイダやカーソルタイプが RecordCount をサポートしていない場合は、-1 を返します。
閉じている Recordset 上で RecordCount プロパティ を取得するとエラーが発生します。
Recordset オブジェクトのカーソルタイプ別の RecordCount プロパティ の戻り値
【書式】 object.CursorType = <カーソルタイプ>
※ object … Recordset オブジェクト
カーソルタイプ | 内容 | 戻り値 |
adOpenDynamic | 動的カーソル | -1 |
adOpenForwardOnly | 前方スクロールカーソル | -1 |
adOpenKeyset | キーセットカーソル | レコード数 |
adOpenStatic | 静的カーソル | レコード数 |
CursorLocation プロパティに adUseClient を設定した場合は、すべてのカーソルタイプで、レコード数が戻り値となります。
【書式】 object.CursorLocation = <カーソルロケーション>
※ object … Recordset オブジェクト
カーソルロケーション | 値 | 内容 |
adUseNone | 1 | カーソル サービスを使いません |
adUseServer | 2 | サーバーサイドカーソル(既定値) |
adUseClient | 3 | クライアントサイドカーソル |
RecordCount プロパティ 使用例
サンプルVBAソース
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
Sub Sample_ADO_RecordCount() '参照設定:Microsoft ActiveX Data Objects 6.1 Library Dim cn As ADODB.Connection Dim rs As ADODB.Recordset Dim constr As String Dim DBFile As String Dim strSQL As String DBFile = ActiveWorkbook.Path & "\mydb1.accdb" constr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & DBFile Set cn = New ADODB.Connection cn.ConnectionString = constr cn.Open strSQL = "Select * from 社員名簿" Set rs = New ADODB.Recordset rs.CursorLocation = adUseClient rs.CursorType = adOpenDynamic rs.Open strSQL, cn Debug.Print rs.RecordCount rs.Close Set rs = Nothing cn.Close Set cn = Nothing End Sub |