猿问

2范围内的维数阵列

2范围内的维数阵列

我在单元格中的Excel工作表中有文本数据B6:H14

有些行有2个单元格有内容,有些行有4个,有些行有7个。如何将这些复制到2维数组?我已经知道尺寸了,所以我很擅长尺寸没有被声明为动态代码。

我是否需要使用循环(我目前正计划使用)?

或者是更容易/更优雅的方式?


蓝山帝景
浏览 388回答 1
1回答

狐的传说

假设您的电子表格看起来像这样有一种非常简单的方法可以将其粘贴在2D阵列中Dim arr as Variantarr = Range("B6:H14").Value将此数组打印回电子表格的最简单方法Sub PrintVariantArr()     Dim arr As Variant     arr = Range("B6:H14")     Range("B16").Resize(UBound(arr, 1), UBound(arr, 2)) = arrEnd Sub或者您可以迭代/循环数组Sub RangeToArray()     Dim arr As Variant     arr = Range("B6:H14").Value    Dim r As Long, c As Long     r = 16     c = 2     Dim i, j    For i = LBound(arr, 1) To UBound(arr, 1)         For j = LBound(arr, 2) To UBound(arr, 2)             Cells(r, c) = arr(i, j)             c = c + 1         Next j         c = 2         r = r + 1     Next iEnd Sub并且您的阵列打印回电子表格
随时随地看视频慕课网APP
我要回答