Método Range.CopyFromRecordset (Excel)
Copia o conteúdo de um objeto Recordset da ADO ou o DAO em uma planilha, começando no canto superior esquerdo do intervalo especificado. Se o objeto Recordset tiver campos contendo objetos OLE, esse método falhará.
Sintaxe
expressão. CopyFromRecordset (dados, MaxRows, MaxColumns)
expressão Uma variável que representa um objeto de Intervalo.
Parâmetros
Nome | Obrigatório/Opcional | Tipo de dados | Descrição |
---|---|---|---|
Dados | Obrigatório | Variantes | O objeto Recordset a ser copiado no intervalo. |
MaxRows | Opcional | Variant | O número máximo de registros a serem copiados na planilha. Se esse argumento for omitido, todos os registros no objeto Recordset serão copiados. |
MaxColumns | Opcional | Variant | O número máximo de campos a serem copiados para a planilha. Se esse argumento for omitido, todos os campos no objeto Recordset serão copiados. |
Valor de retorno
Long
Comentários
A cópia começa na linha atual do objeto Recordset. Após a conclusão da cópia, a propriedade EOF do objeto Recordset será True. É recomendável que você defina uma variável de objeto para o intervalo ao qual você está copiando do conjunto de registros. Não fazer isso pode causar erros genéricos de automação, dependendo do conjunto de registros e do intervalo.
Exemplo
Este exemplo copia os nomes de campo de um objeto Recordset do DAO na primeira linha de uma planilha e formata os nomes em negrito. Em seguida, o exemplo copia o conjunto de registros na planilha, começando na célula 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
Suporte e comentários
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.