希望这很容易,但我似乎找不到任何参考。
我如何打印存储在数组中的东西的位置,而不是其中的实际项目。
Array(0) = Dog
Array(1) = Cat
Array(2) = Fish
假设我搜索了数组并找到了猫,我如何打印存储猫的位置,在本例中为索引号 (1)。
提前致谢。
数组的位置称为index
如果你运行一个循环,
For i = LBound(Array) to UBound(Array)
if Array(i) = "Cat" then '--restrict to find index of particular item
MsgBox i '-- gives the location/index of Cat item
End if
next i
LBound
: 是下限,数组的起始索引。首先。它可以是零或任何值,因为 VBA 提供了将默认数组基数更改为 0 或 1 的灵活性。
UBound
: 是上界,数组的结束索引。最后。
在这种情况下使用ArrayList比使用简单数组更好。
Set myArray = CreateObject ("System.Collections.ArrayList")
With myArray
.Add "Dog"
.Add "Cat"
.Add "Fish"
End With
intIndex = myArray.IndexOf ("Cat",0)
此外,您不必关心界限。