VBA-arraylengte / -grootte

Deze tutorial leert je hoe je de lengte (grootte) van een array in VBA kunt krijgen.

Arraylengte ophalen

Om de lengte van een array te krijgen, moet je de begin- en eindposities van de array weten. U kunt dit doen met de UBound- en LBound-functies van de VBA.

LBound- en UBound-functies

Deze procedure laat zien hoe u de UBound- en LBound-functies kunt gebruiken op een array met één dimensie:

123456 Sub UBoundLBound()Dim exArr (1 tot 4) als stringMsgBox UBound(exArr)MsgBox LBound(exArr)Einde sub

Als u de twee aftrekt, krijgt u de arraylengte (UBound - LBound +1).

Functie matrixlengte ophalen

Deze functie berekent de grootte (lengte) van een eendimensionale array:

1234567 Publieke functie GetArrLength(a As Variant) As LongAls Is Leeg(a) DanGetArrLength = 0AndersGetArrLength = UBound(a) - LBound(a) + 1Stop alsFunctie beëindigen

2D-arraygrootte verkrijgen

Deze functie berekent het aantal posities in een tweedimensionale array:

12345678910111213141516171819 SubtestArrySize()Dim arr2D (1 tot 4, 1 tot 4) Zo langMsgBox GetArrSize_2D(arr2D)Einde subPublieke functie GetArrSize_2D(a As Variant) As LongDim x zo lang, y zo langAls Is Leeg(a) DanGetArrSize_2D = 0Andersx = UBound(a, 1) - LBound(a, 1) + 1y = UBound(a, 2) - LBound(a, 2) + 1GetArrSize_2D = x * yStop alsFunctie beëindigen
wave wave wave wave wave