MS-Access Recordset to Array,值被转置

问题描述 投票:1回答:2

当我使用以下方法时:

rstArray = rs.GetRows(rs.RecordCount)

输出到数组的大小相似:

rstArray(1,6)  'just an example

实际上,输出(即使在查询结果中访问)也是:

rstArray(6,1)   'again just an example

我的问题是为什么这个转换?

我该怎么扭转呢?我理解如果我使用后期绑定并使用excel我可以使用application.tranpose,但是如果我只是在Access中呢?

vba ms-access access-vba
2个回答
2
投票

这就是qazxsw poi的工作方式。即使您可以使用Excel转置功能,如果记录数超过Excel中的最大列数,它也不会始终有效。

你有3个选择:

  1. 使用列行索引或行列来循环遍历数组。
  2. 编写一个辅助函数,为您进行转置。
  3. 如果你所做的只是将数据插入Excel,请不要使用GetRows。请改用GetRows方法。

0
投票

使用Range.CopyFromRecordset

此致,TheSilkCode

© www.soinside.com 2019 - 2024. All rights reserved.