![](https://cdn.know-base.net/1511007/vba_array_size_-_step_by_step_guide_with_examples.jpg.webp)
I denne artikkelen gir vi trinnvis guide for å finne matrisestørrelsen ved hjelp av VBA-kode.
Hvordan finne størrelsen på en serie ved hjelp av VBA-kode?
Følg trinnene for å finne matrisestørrelsen ved hjelp av Excel VBA-kode.
- Trinn 1: La oss starte med det grunnleggende først, erklære en variabel i VBA som variant datatype.
Kode:
Sub Array_Size () Dim MyArray Som Variant End Sub
![](https://cdn.know-base.net/1511007/vba_array_size_-_step_by_step_guide_with_examples_2.jpg.webp)
- Trinn 2: For denne variabelen bruk ARRAY-funksjonen og tilordne noen verdier som vist nedenfor.
Kode:
Sub Array_Size () Dim MyArray As Variant MyArray = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") End Sub
![](https://cdn.know-base.net/1511007/vba_array_size_-_step_by_step_guide_with_examples_3.jpg.webp)
- Trinn 3: Ok, vi har tilordnet noen verdier til matrisenavnet “MyArray”.
Anta at hvis vi trenger å skrive en sløyfe for å lagre disse matriseverdiene i celler, må vi bestemme hvor mange ganger sløyfen må kjøres. Dette avhenger av antall verdier matrisen har.
Ok, se nå på antall verdier som er tilordnet matrisenavnet “MyArray”, det er totalt 7 verdier som er tilordnet matrisen, så nå vet vi hvor mange ganger løkken må kjøre for å lagre verdiene til en matrise i celler .
- Trinn 4: Deklarer en annen variabel som heltall for å skrive FOR-loop i VBA.
Kode:
Sub Array_Size () Dim MyArray As Variant MyArray = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") Dim k As Integer For k = 1 til 7 Neste k End Sub
![](https://cdn.know-base.net/1511007/vba_array_size_-_step_by_step_guide_with_examples_4.jpg.webp)
- Trinn 5: Der vi går, har vi åpnet FOR-sløyfen som startende fra 1 til 7, inne i sløyfen skriv CELLS-egenskapen for å lagre som vist nedenfor.
Kode:
Sub Array_Size () Dim MyArray As Variant MyArray = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") Dim k As Integer For k = 1 til 7 Celler (k, 1) .Value = MyArray (k) Neste k End Sub
- Trinn 6: Ok, utfør nå koden linje for linje ved å trykke på en F8-funksjonstast. Når du trykker på F8-tasten første gang, vil den starte makroen.
![](https://cdn.know-base.net/1511007/vba_array_size_-_step_by_step_guide_with_examples_5.jpg.webp)
- Trinn 7: Trykk på F8 nå, den hopper til linjen for tildeling av matriseverdi.
![](https://cdn.know-base.net/1511007/vba_array_size_-_step_by_step_guide_with_examples_6.jpg.webp)
- Trinn 8: Fra nå av har arraynavnet “MyArray” ingen verdier i. Trykk F8, og alle de nevnte verdiene vil bli tilordnet arrayvariabelen.
![](https://cdn.know-base.net/1511007/vba_array_size_-_step_by_step_guide_with_examples_7.jpg.webp)
- Trinn 9: Nå sløyfe begynner å løpe og trykk F8-tasten to ganger og se hvilken verdi vi får i celle A1.
![](https://cdn.know-base.net/1511007/vba_array_size_-_step_by_step_guide_with_examples_8.jpg.webp)
- Ups !!! Vent, vår første verdi i arrayvariabelen er "Jan", men vi har resultatet som den andre verdien "Feb" når den første verdisløyfen fortsatt kjører.
- Trinn 10: Dette er fordi når matrixverdiene teller starter fra null, ikke fra 1, må vi inkludere startløkken som null.
![](https://cdn.know-base.net/1511007/vba_array_size_-_step_by_step_guide_with_examples_9.jpg.webp)
- Trinn 11: Når startposisjonen til sløyfen er redusert med en tilsvarende slutt, skal også reduseres med 1, så gjør slutten som 6 i stedet for 7.
![](https://cdn.know-base.net/1511007/vba_array_size_-_step_by_step_guide_with_examples_10.jpg.webp)
- Trinn 12: Når sløyfens start og slutt bestemte seg for en tilpasning til, må vi gjøre, dvs. i CELLS-egenskapen har vi brukt "k" -variabelen som den dynamiske cellevelgeren, men siden sløyfen vår starter fra null, er det ingen celle starter med null , så legg pluss 1 til variabelen “k”.
Kode:
Sub Array_Size () Dim MyArray As Variant MyArray = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") Dim k As Integer For k = 0 Til 6 Celler (k + 1, 1) .Value = MyArray (k) Neste k End Sub
![](https://cdn.know-base.net/1511007/vba_array_size_-_step_by_step_guide_with_examples_11.jpg.webp)
- Trinn 13: Så når løpene er startet er førstegangs "k" -verdien null, og siden vi har lagt til pluss 1, vil "k" -verdien være 1 så refererer til celle A1.
- Trinn 14: Kjør nå koden, og alle verdiene til matrisen vil bli lagret i celler.
![](https://cdn.know-base.net/1511007/vba_array_size_-_step_by_step_guide_with_examples.gif)
I dette tilfellet har vi imidlertid bestemt sløyfens start- og sluttstørrelse manuelt, men størrelsen på matrisen kan enkelt bestemmes ved hjelp av funksjonene LBOUND & UBOUND.
Finn størrelse på en serie automatisk
- Trinn 1: Når vi omtrent inkluderte sløyfe start- og sluttpunkt i det ovennevnte, har vi manuelt talt antall verdier matrisen har, men for å starte matrisen, bruk LBOUND-funksjonen og for dette passet "MyArray" variabelnavn.
![](https://cdn.know-base.net/1511007/vba_array_size_-_step_by_step_guide_with_examples_12.jpg.webp)
- Trinn 2: Og for å bestemme den siste matrisestørrelsen, bruk UBOUND-funksjonen og skriv inn navnet på matrisen “MyArray”.
Kode:
Sub Array_Size () Dim MyArray As Variant MyArray = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") Dim k As Integer For k = Lboubd (MyArray ) Til UBound (MyArray) celler (k + 1, 1) .Value = MyArray (k) Neste k End Sub
![](https://cdn.know-base.net/1511007/vba_array_size_-_step_by_step_guide_with_examples_13.jpg.webp)
- Trinn 3: Ok, start nå linjen etter linjekode og trykk F8-tasten til den når sløyfens startpunkt.
![](https://cdn.know-base.net/1511007/vba_array_size_-_step_by_step_guide_with_examples_14.jpg.webp)
- Trinn 4: Plasser nå først markøren på “LBound (MyArray)” og se hva den sier.
![](https://cdn.know-base.net/1511007/vba_array_size_-_step_by_step_guide_with_examples_15.jpg.webp)
- Trinn 5: Utgangspunktet tallet det står på er null, plasser nå markøren på “UBound (MyArray)” og se hva den sier.
![](https://cdn.know-base.net/1511007/vba_array_size_-_step_by_step_guide_with_examples_16.jpg.webp)
Det står matrisestørrelse som 6, så som hvordan vi har nevnt start og slutt manuelt, velger UBOUND og LBOUND automatisk tallene for oss.