Range.CopyFromRecordset 方法 (Excel)
將 ADO 或 DAO Recordset 物件的內容複製到工作表中,複製的起始位置在指定範圍的左上角。 如果 Recordset 物件包含具 OLE 物件的欄位,本方法將失效。
語法
expression.CopyFromRecordset (Data, MaxRows, MaxColumns)
expression 代表 Range 物件的變數。
參數
名稱 | 必要/選用 | 資料類型 | 描述 |
---|---|---|---|
Data | 必要 | Variant | 要複製到指定範圍中的 Recordset 物件。 |
MaxRows | 選用 | Variant | 要複製到工作表的記錄數上限。 如果省略此引數,將複製 Recordset 物件中的所有記錄。 |
MaxColumns | 選用 | Variant | 要複製到工作表的欄位數上限。 如果省略此引數,將複製 Recordset 物件中的所有欄位。 |
傳回值
Long
備註
會從 Recordset 物件目前的列開始複製。 複製完成之後,Recordset 物件的 EOF 屬性值為 True。 建議您將物件變數設定為要從記錄集複製到的範圍。 若無法這麼做,可能會根據記錄集和範圍而導致一般自動化錯誤。
範例
本範例會將 DAO Recordset 物件中的欄位名稱複製到工作表的第一列中,並將這些名稱的樣式設定為粗體。 然後,範例將記錄集複製到工作表中,起始位置在 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
Set PushRange = ws.Range("A2")
PushRange.CopyFromRecordset rs
支援和意見反應
有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。