Excel VBA-在工作表中显示记录集而不循环
我有一些代码,可以将数据从访问表检索到Excel VBA-在工作表中显示记录集而不循环,excel,vba,ms-access,Excel,Vba,Ms Access,我有一些代码,可以将数据从访问表检索到记录集。 我想在我的工作表上显示这些数据,但我很难做到这一点。 我创建了一个名为test的工作表,同时试图解决这个问题,我尝试了: Test.Range("A1").CopyFromRecordset rs 但那没什么用。 我已经能够用 rs.MoveFirst rowctr = 2 Do Until rs.EOF Test.Cells(rowctr, 1) = rs![Name] Test.Cells(rowctr,
记录集
。
我想在我的工作表上显示这些数据,但我很难做到这一点。
我创建了一个名为test的工作表,同时试图解决这个问题,我尝试了:
Test.Range("A1").CopyFromRecordset rs
但那没什么用。
我已经能够用
rs.MoveFirst
rowctr = 2
Do Until rs.EOF
Test.Cells(rowctr, 1) = rs![Name]
Test.Cells(rowctr, 2) = rs![Account Type]
Test.Cells(rowctr, 3) = rs![Forecast Date]
Test.Cells(rowctr, 4) = rs![Forecast Value]
Test.Cells(rowctr, 5) = rs![Actual Date]
Test.Cells(rowctr, 6) = rs![Actual Value]
rowctr = rowctr + 1
rs.MoveNext
Loop
但我想有比这更好的方法吗?
我已经用普通数组做了很多,用一个命令填充整个数组的范围没有问题。
不过,我没有对记录集做过太多的工作。我通常只使用
CopyFromRecordset
(如您所示)-它对我有效,所以另一部分可能还有另一个问题?WasTest.Range(“A1”).CopyFromRecordset rs
在创建rs后立即执行?是的,我在创建rs后直接使用了CopyFromRecordset代码。名称将for循环置于上方我如何创建记录集?在.CopyFromRecordset