抽出されたレコード数をカウント
Sub 抽出2() '抽出レコードをカウントする Dim myCon As New ADODB.Connection, myRS As New ADODB.Recordset Dim FileName As String FileName = ThisWorkbook.Path & "\mdb\2-sampleDB.mdb" myCon.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & FileName 'CursorLocation プロパティに adUseClient を設定 myRS.CursorLocation = adUseClient myRS.Open "伝票一覧", myCon, adOpenForwardOnly, adLockOptimistic '「得意先」が「小料理ひろ」のレコードのみ抽出して転記 myRS.Filter = "得意先 = '小料理ひろ'" Debug.Print "得意先の該当レコード数" & myRS.RecordCount '「受注日」が「2007年3月1日〜3月5日」のレコードのみ抽出して転記 myRS.Filter = "受注日 >= #2007/03/01# And 受注日 <= #2007/03/05#" Debug.Print "受注日の該当レコード数" & myRS.RecordCount myRS.Close: Set myRS = Nothing myCon.Close: Set myCon = Nothing End Sub
実行結果
RecordCount プロパティを使用する時は、Recordset オブジェクトを Open メソッドで開く前に、CursorLocation プロパティに「adUseClient」を設定すること。
RecordCount プロパティを設定しないと使用できない。
下図のように「-1」を返す。
並べ替えをする時の Sort プロパティも同様。
実行結果