VBA循环并编写ADODB Recordset

时间:2011-07-22 17:58:59

标签: vba excel-vba recordset excel

我刚开始使用记录集,而且我正在研究从sql server检索记录集的事情,然后我需要循环遍历excel电子表格中的值。

记录集中字段的顺序已经是正确的,所以我应该能够在一个范围内从一个单元移动到单元格粘贴每个值,但我不确定如何做到这一点。我知道记录集是正确的,因为我把它输出到一个文件,所有内容都按顺序显示。

到目前为止,这是我的代码:

Public Sub retrieve()

Dim rsTest As ADODB.Recordset
Set rsTest = New ADODB.Recordset
Set rsTest = DataManager.GetData()

Sheets("Planners").Activate
Dim cel As Range
Dim i As Integer
Dim rsFields As Variant

Do While Not rsTest.EOF

   For Each cel In ActiveSheet.Range("A3:H1000").Cells
     For Each rsFields In rsTest.Fields

     cel = rsTest(rsFields.Name)

     Next
  Next

Loop

End Sub

提前感谢您提供任何帮助。

1 个答案:

答案 0 :(得分:6)

如果您想要所有记录集字段,那么您可以这样做:

Public Sub retrieve()
Dim rsTest As ADODB.Recordset

    Set rsTest = DataManager.GetData()

    If Not rsTest.EOF Then
        Sheets("Planners").Range("A3").CopyFromRecordset rsTest
    End If

End Sub