如何在VBA中重新保存锯齿状数组(数组中的数组)?

时间:2019-01-18 12:23:44

标签: arrays excel vba jagged-arrays

我在EXCEL VBA中有一个数组数组(不是2D数组),我需要向内部数组中添加元素。 例如:

Option Explicit

Sub ArrayofArrays()

Dim OuterArray() As Variant
ReDim OuterArray(0 To 0)

Dim InnerArray() As Variant
ReDim InnerArray(0 To 0)

InnerArray(0) = "Foo"
OuterArray(0) = InnerArray

ReDim Preserve OuterArray(LBound(OuterArray) To UBound(OuterArray) + 1)
End Sub

我现在可以通过以下方式访问内部元素:

debug.print OuterArray(0)(0)

将我打印为“ Foo”

但是如何在OuterArray内部扩展数组?

最后一行仅将一个空元素添加到OuterArray:

ReDim Preserve OuterArray(LBound(OuterArray) To UBound(OuterArray) + 1)

但是我想要的是这个

¦ ___ OuterArray(0)

¦ _____________ OuterArray(0)(0):“ Foo”

¦ _____________ OuterArray(0)(1):“酒吧”

谢谢!

1 个答案:

答案 0 :(得分:0)

body不允许您直接class Solution { public List<Interval> merge(List<Interval> intervals) { if (intervals.size() <= 1) { return intervals; } intervals.sort((i1, i2) -> Integer.compare(i1.start, i2.start)); List<Interval> result = new LinkedList<Interval>(); int start = intervals.get(0).start; int end = intervals.get(0).end; for(Interval interval : intervals) { if (interval.start <= end) { end = Math.max(end, interval.end); } else { result.add(new Interval(start, end)); start = interval.start; end = interval.end; } } result.add(new Interval(start, end)); return result; } } 内部数组,但是,您可以使用中间辅助数组(在此示例中名为VBA)来轻松实现它 >

ReDim