Excel 宏复制和转置数据到其他有特殊条件的工作簿

Excel Macro copy and transpose data to other workbook with special condition

我对宏还是个新手。我在第一个工作簿中有数据,一个 column.I 中有 300 行数据,需要将每 6 行数据转置到其他工作簿中的 6 列。 例如,来自 A1:A6 的数据必须转置为 A1:F1。同样来自 A7:A14 的数据必须转置为 A2:F2.

我有这个代码。数据保存在数组

中的vDB中
Dim vDB
    vDB = rsData.getRows
         TargetRange.Cells(1, 1).Resize(UBound(vDB, 1) + 1, UBound(vDB, 2) + 1) = vDB

使用此代码,我可以将数据复制和转置到其他工作簿。但它只适用于从一列到一行。我找不到每 6 行到 6 列的方法。 有没有办法用我上面的代码将每 6 行的数据转置为 6 列?感谢您的帮助。

不需要GetRows。获取 RecordSet rsData 后,使用此代码:

Dim i As Long
Do Until rsData.EOF
  targetRange.Cells(1 + Int(i / 6), 1 + i Mod 6).value = rsData.Fields(0).value
  i = i + 1
  rsData.MoveNext
Loop