範囲 CopyFromRecordset メソッド (Excel)Range.CopyFromRecordset method (Excel)

指定された範囲の左上隅を始点として、ADO または DAO のRecordsetオブジェクトの内容をワークシートにコピーします。Copies the contents of an ADO or DAO Recordset object onto a worksheet, beginning at the upper-left corner of the specified range. Recordsetオブジェクトに OLE オブジェクトが含まれるフィールドが含まれている場合、このメソッドは失敗します。If the Recordset object contains fields with OLE objects in them, this method fails.

構文Syntax

Copyfromrecordset(DataMaxRowsMaxColumns)expression.CopyFromRecordset (Data, MaxRows, MaxColumns)

expressionRange オブジェクトを表す変数です。expression A variable that represents a Range object.

パラメーターParameters

名前Name 必須 / オプションRequired/Optional データ型Data type 説明Description
DataData 必須Required バリアント型Variant セル範囲にコピーする Recordset オブジェクトを指定します。The Recordset object to copy into the range.
MaxRowsMaxRows オプションOptional VariantVariant ワークシートにコピーするレコードの最大数を指定します。The maximum number of records to copy onto the worksheet. この引数を省略すると、Recordset オブジェクトのすべてのレコードをコピーします。If this argument is omitted, all the records in the Recordset object are copied.
MaxColumnsMaxColumns オプションOptional VariantVariant ワークシートにコピーするフィールドの最大数を指定します。The maximum number of fields to copy onto the worksheet. この引数を省略すると、Recordset オブジェクトのすべてのフィールドをコピーします。If this argument is omitted, all the fields in the Recordset object are copied.

戻り値Return value

LongLong

解説Remarks

コピーは Recordset オブジェクトのカレント レコードの位置から行われます。Copying begins at the current row of the Recordset object. コピーが完了すると、Recordset オブジェクトの EOF プロパティは True になります。After copying is completed, the EOF property of the Recordset object is True.

Example

次の使用例は、DAO の Recordset オブジェクトのフィールド名を、ワークシートの先頭行にコピーし、太字の書式を設定します。This example copies the field names from a DAO Recordset object into the first row of a worksheet and formats the names as bold. 次に、そのレコードセットをセル A2 を起点とするセル範囲にコピーします。The example then copies the recordset onto the worksheet, beginning at cell A2.

For iCols = 0 to rs.Fields.Count - 1 
 ws.Cells(1, iCols + 1).Value = rs.Fields(iCols).Name 
Next 
ws.Range(ws.Cells(1, 1), _ 
 ws.Cells(1, rs.Fields.Count)).Font.Bold = True 
ws.Range("A2").CopyFromRecordset rs

サポートとフィードバックSupport and feedback

Office VBA またはこの説明書に関するご質問やフィードバックがありますか?Have questions or feedback about Office VBA or this documentation? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.