0

我想知道如何使用一个变量来调用另一个变量。例如 Apple1、Apple2、Apple3、Apple4、Apple5、Apple6 和 AppleNum。

假设 AppleNum 为 4。如何使用 AppleNum 调用代码以使用 Apple4?

另外,如果 Apple1、Apple2...等是对象怎么办?

我对如何解决这个问题的第一个想法是使用某种数组?

注意:在此处使用 Select Case 将起作用,但不仅仅是我拥有的代码,并且需要单独写出每个案例(大量工作)

只是出于兴趣,有没有办法在代码中定义 AppleNum 变量的数量?

如果你能帮忙,谢谢!

4

1 回答 1

0

在 VBA 中可以有一个可变大小的数组,使用以下(例如):

Dim myArray() as Double
Dim AppleNum as Integer, arraySize as Integer
AppleNum = 4
arraySize = 6

ReDim myArray(1 to arraySize)

这将创建一个数组myArray,并将其大小更改为 6 个元素长(索引从 1 开始)。您可以在一个语句中声明整个数组(无需重新调整)

myArray = Array(Apple1, Apple2, Apple3, Apple4, Apple5, Apple6)

假设Apple1etc. 之前已经声明过。

如果您声明myArrayVariant而不是Integer(或不提供类型 - 默认为 Variant),那么您的数组可以包含您想要的任何内容。

你也可以使用

ReDim Preserve myArray(1 to arraySize * 2)

如果稍后您希望数组大两倍,但又不想丢失分配的前六个元素。

我希望这些事情能让你解决你的问题。

于 2013-05-27T21:59:33.987 回答