在Excel中将访问VBA记录集导出到单行

时间:2017-11-14 03:06:24

标签: vba ms-access access-vba ms-access-2013 recordset

我正在尝试编写一些VBA来将Access中的记录集导出到Excel。我最后归结到下面的导出过程,但它导出到A列和B列,我希望将所有数据导出到第2行。

导出到第2行的正确协议/语法是什么?

Do While Not rsone.EOF
   columnNum = 1
   rowNum = rowNum + 1
   For Each fieldsss In rsone.Fields
       newExcelApp.Cells(rowNum, columnNum) = fieldsss.Value
     columnNum = columnNum + 1
   Next fieldsss
   rsone.MoveNext
Loop

1 个答案:

答案 0 :(得分:3)

kurtz的答案几乎是正确的,但他忘了停止重置列号,使每个下一个记录都覆盖前一个记录。

使用此:

columnNum = 1
Do While Not rsone.EOF
   For Each fieldsss In rsone.Fields
       newExcelApp.Cells(2, columnNum).Value = fieldsss
     columnNum = columnNum + 1
   Next fieldsss
   rsone.MoveNext
Loop