访问存储在单个单元格中的数组

时间:2015-10-01 19:28:16

标签: arrays excel vba excel-vba

因此,我在工作簿中的单元格(1,1)中放置了一个数组={1,2,3}

如何将此分配给VBA中的变量数组,例如dim i() as integer

同样,如何在VBA中获取数组并将其分配给工作表中的单个单元格?

3 个答案:

答案 0 :(得分:2)

要将阵列放入VBA,您可以这样做:

Dim i As Variant
i = Split(Mid(Replace(Cells(1, 1).Formula, "}", ""), 3), ",")

把数组放回去:

Cells(2, 1).Formula = "={" & Join(i, ",") & "}"

答案 1 :(得分:2)

这将直接为您提供一个数组:

Sub TT()

    Dim arr
    arr = Selection.Parent.Evaluate(Selection.Formula) '={1,2,3}

    Debug.Print TypeName(arr)             'Variant()
    Debug.Print LBound(arr), UBound(arr)  '1, 3

End Sub

答案 2 :(得分:0)

这些:

aArray = Split(rRange, ",")
rRange = Join(aArray, ",")