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 支持和反馈,获取有关如何接收支持和提供反馈的指南。