Recordset オブジェクトの内容をワークシートにコピーする(CopyFromRecordset メソッド・ADO)
CopyFromRecordset メソッド
ADO の Recordset オブジェクトに格納されている全てのレコードをワークシートにコピーします。指定されたセル範囲の左上端を起点として、データを貼り付けます。
RecordCount = object.CopyFromRecordset ( Data, MaxRows, MaxColumns )
引数・戻り値
- object ・・・ 対象となる Range オブジェクトを指定します。
 - Data ・・・ コピーする Recordset オブジェクト を指定します(省略不可)。
 - MaxRows ・・・ コピーするレコードの最大数を指定します。省略した場合、Recordset オブジェクトのすべてのレコードをコピーします。
 - MaxColumns ・・・ コピーするフィールドの最大数を指定します。省略した場合、Recordset オブジェクトのすべてのフィイールドをコピーします。
 - RecordCount ・・・ コピーしたレコード数。
 
コピーは Recordset オブジェクトのカレントレコードの位置から行われます。コピーが完了すると、Recordset オブジェクトの EOF プロパティは True になります。
CopyFromRecordset メソッドの使用例
サンプル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 36 37 38 39 40 41 42 43  | 
						Sub Sample_ADO_CopyFromRecordset()     '参照設定: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     Dim num As Long     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 社員名簿 where ID < 10 order by ID;"     Set Rs = New ADODB.Recordset     Rs.Source = strSQL     Rs.ActiveConnection = cn     Rs.Open     With Worksheets("Sheet1")         .Cells.Clear         num = .Range("A1").CopyFromRecordset(Data:=Rs)         .Cells(.Rows.Count, "A").End(xlUp).Offset(2, 0).Value = "レコード数"         .Cells(.Rows.Count, "A").End(xlUp).Offset(0, 1).Value = num     End With     Rs.Close     Set Rs = Nothing     cn.Close     Set cn = Nothing End Sub  | 
					
実行結果
関連記事
-  
            
              - 
      
Excelファイルに接続(ADO)
ADOでExcelファイルに接続 ADO を使用してExcelファイルを読み込み …
 
-  
            
              - 
      
Recordset オブジェクト内のレコード数(ADO)RecordCount プロパティ
RecordCount プロパティ Recordset オブジェクトのレコード数 …
 
-  
            
              - 
      
クエリの作成・削除(ADOX)
ADOX を使用してクエリを作成・削除 クエリを作成する手順 【書式】 <参照設 …
 
-  
            
              - 
      
クエリにパラメータを渡して結果を取得する(ADO)Command オブジェクト・Execute メソッド
クエリにパラメータを渡して結果を取得する手順 Command オブジェクトの作成 …
 
-  
            
              - 
      
カレントレコードの移動(ADO)MoveFirst、MoveLast、MoveNext、MovePrevious、Move
MoveFirst メソッド、MoveLast メソッド、MoveNext メソ …
 
-  
            
              - 
      
レコードを並べ替える(ADO)Sort プロパティ
データベースのレコードを並べ替える Sort プロパティ 【書式】 object …
 
-  
            
              - 
      
テーブルの作成・削除/フィールドの作成・削除(ADOX)
ADOX を使用してテーブル・フィールド(列)を作成・削除 Table オブジェ …
 
-  
            
              - 
      
データベース(Oracle)に接続する(oo4o)
oo4o 接続 OO4O(Oracle Objects for OLE)はWin …
 
-  
            
              - 
      
インデックス、プロパティの設定(ADOX)
インデックスを作成する index オブジェクト 【書式】 <CreateObj …
 
-  
            
              - 
      
CSVファイルに接続(ADO)
ADOでCSVファイルに接続 ADO を使用してCSVファイルを読み込みます。C …
 
        