Velikost polja VBA - vodnik po korakih s primeri

V tem članku ponujamo vodnik po korakih za iskanje velikosti polja z uporabo kode VBA.

Kako najti velikost polja z uporabo kode VBA?

Sledite korakom za iskanje velikosti polja z uporabo kode Excel VBA.

  • 1. korak: Najprej začnimo z osnovnim, spremenljivko v VBA razglasimo kot različico podatkovnega tipa.

Koda:

Sub Array_Size () Zatemni MyArray kot različico End Sub
  • 2. korak: Za to spremenljivko uporabite funkcijo ARRAY in dodelite nekaj vrednosti, kot je prikazano spodaj.

Koda:

Sub Array_Size () Dim MyArray As Variant MyArray = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") End Sub
  • 3. korak: Ok, imenu polja »MyArray« smo dodelili nekaj vrednosti.

Predpostavimo, če moramo napisati zanko za shranjevanje teh vrednosti matrike v celice, potem se moramo odločiti, kolikokrat naj se zanka zažene. To je odvisno od števila vrednosti polja.

Ok, zdaj si oglejte število vrednosti, dodeljenih imenu polja »MyArray«, matriki je dodeljenih skupno 7 vrednosti, tako da zdaj vemo, kolikokrat mora zanka teči, da shrani vrednosti matrike v celice .

  • 4. korak: Razglasite drugo spremenljivko kot celo število, da zapišete zanko FOR v VBA.

Koda:

Sub Array_Size () Dim MyArray As Variant MyArray = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") Dim k Kot celo število Za k = 1 do 7 Naprej k Konec Sub
  • 5. korak: Tam smo odprli zanko FOR, začenši od 1 do 7, znotraj zanke napišite lastnost CELLS za shranjevanje, kot je prikazano spodaj.

Koda:

Sub Array_Size () Dim MyArray As Variant MyArray = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") Dim k Kot celo število Za k = 1 do 7 Celice (k, 1) .Vrednost = MyArray (k) Naprej k Konec Sub
  • 6. korak: Ok, zdaj izvedite kodo vrstico za vrstico s pritiskom na funkcijsko tipko F8. Ob prvem pritisku na tipko F8 bo sprožil makro.
  • 7. korak: Pritisnite F8, da bo skočil na vrstico za dodelitev vrednosti polja.
  • Korak 8: Ime polja »MyArray« odslej nima nobenih vrednosti, pritisnite F8 in vse omenjene vrednosti bodo dodeljene spremenljivki polja.
  • Korak 9: Zdaj se bo zanka začela izvajati in dvakrat pritisnite tipko F8 in poglejte, kakšno vrednost dobimo v celici A1.
  • Ups !!! Počakajte, naša prva vrednost v spremenljivki polja je "Jan", rezultat pa imamo kot drugo vrednost "Feb", ko še vedno teče prva zanka vrednosti.
  • Korak 10: To je zato, ker se število vrednosti vašega polja začne od nič, ne od 1, zato moramo začetno zanko vključiti kot nič.
  • Korak 11: Ko se začetni položaj zanke zmanjša za enega podobno končanega, bi ga bilo treba zmanjšati tudi za 1, zato naredite konec kot 6 namesto 7.
  • Step 12: Once the loop starting and ending decided one more tweak we need to do, i.e. in the CELLS property we have used “k” variable as the dynamic cell picker but since our loop starts from zero, there is no cell starts with zero, so add plus 1 to the variable “k”.

Code:

Sub Array_Size() Dim MyArray As Variant MyArray = Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") Dim k As Integer For k = 0 To 6 Cells(k + 1, 1).Value = MyArray(k) Next k End Sub
  • Step 13: So now upon running the loop first-time “k” value is zero, and since we have added plus 1, the “k” value will be 1 so refers to cell A1.
  • Step 14: Now run the code, and all the values of array will be stored in cells.

However, in this instance, we have decided the loop starting and ending size manually, but the size of the array can be determined easily using LBOUND & UBOUND functions.

Find Size of an Array Automatically

  • Step 1: When we about included loop starting and ending point in the above we have manually counted the number of values array has but to start the array use LBOUND function and for this pass “MyArray” variable name.
  • Step 2: And to determine the last array size use UBOUND function and enter the array name “MyArray”.

Code:

Sub Array_Size() Dim MyArray As Variant MyArray = Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") Dim k As Integer For k = Lboubd(MyArray) To UBound(MyArray) Cells(k + 1, 1).Value = MyArray(k) Next k End Sub
  • 3. korak: V redu, začnite vrstico za vrstico in pritisnite tipko F8, dokler ne doseže začetne točke zanke.
  • 4. korak: Zdaj postavite kazalec na “LBound (MyArray)” in si oglejte, kaj piše.
  • 5. korak: Številka začetne točke, za katero piše, je nič, zdaj premaknite kazalec na “UBound (MyArray)” in si oglejte, kaj piše.

Velikost matrike piše 6, tako da, tako kot smo ročno omenili začetek in konec, UBOUND in LBOUND samodejno izbereta številki za nas.

Zanimive Članki...