gpt4 book ai didi

vba - 数组的数组 : Can you directly ReDim an inner array?

转载 作者:行者123 更新时间:2023-12-04 19:47:40 31 4
gpt4 key购买 nike

假设我想要一个 10 元素数组,第一个元素是一个 2 元素数组。这是我想做的,但它会导致编译错误:

Dim a As Variant: ReDim a(9)
ReDim a(0)(2)

这行得通,但它会复制一份,如果可能的话,我想直接这样做:

Dim a As Variant: ReDim a(9)
Dim b As Variant: ReDim b(2)
a(0) = b

最佳答案

无需DimReDim 您的阵列。如果您希望数组具有静态大小,只需使用 Dim:

Dim a(9)

要使第一个元素成为空的双元素子数组,您可以使用 Array() 函数并为元素分配初始值 Empty:

a(0) = Array(Empty, Empty)

测试:

Debug.Print IsEmpty(a(0))        ' False (holds sub-array)
Debug.Print IsEmpty(a(4)) ' True (uninitialized main element)
Debug.Print IsEmpty(a(0)(0)) ' True (uninitialized subarray element)

关于vba - 数组的数组 : Can you directly ReDim an inner array?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32256021/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com