VBA masyvo ilgis / dydis

Ši pamoka išmokys jus, kaip gauti masyvo ilgį (dydį) VBA.

Gaukite masyvo ilgį

Norėdami gauti masyvo ilgį, turite žinoti masyvo pradžios ir pabaigos pozicijas. Tai galite padaryti naudodami VBA „UBound“ ir „LBound“ funkcijas.

LBound ir UBound funkcijos

Ši procedūra parodo, kaip naudoti UBound ir LBound funkcijas vieno matmens masyve:

123456 Sub UBoundLBound ()Dim exArr (nuo 1 iki 4) kaip eilutė„MsgBox UBound“ („exArr“)„MsgBox LBound“ („exArr“)Pabaiga Sub

Atėmus du, gausite masyvo ilgį (UBound - LBound +1).

Gaukite masyvo ilgio funkciją

Ši funkcija apskaičiuos vienmatės masyvo dydį (ilgį):

1234567 Viešoji funkcija „GetArrLength“ (kaip variantas) tiek laikoJei IsEmpty (a) Tada„GetArrLength“ = 0Kitas„GetArrLength“ = „UBound“ (a) - „LBound“ (a) + 1Pabaiga JeiPabaigos funkcija

Gaukite 2D masyvo dydį

Ši funkcija apskaičiuos dvimatio masyvo pozicijų skaičių:

12345678910111213141516171819 Sub testArrySize ()Dim arr2D (nuo 1 iki 4, nuo 1 iki 4) kaip ilgai„MsgBox“ „GetArrSize_2D“ („arr2D“)Pabaiga SubViešoji funkcija „GetArrSize_2D“ (kaip variantas) tiek laikoDim x As Long, y As LongJei IsEmpty (a) Tada„GetArrSize_2D“ = 0Kitasx = UBound (a, 1) - LBound (a, 1) + 1y = UBound (a, 2) - LBound (a, 2) + 1GetArrSize_2D = x * yPabaiga JeiPabaigos funkcija
wave wave wave wave wave