Š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 |