Velikost pole VBA - průvodce krok za krokem s příklady

V tomto článku poskytujeme průvodce krok za krokem k vyhledání velikosti pole pomocí kódu VBA.

Jak zjistit velikost pole pomocí kódu VBA?

Podle pokynů vyhledejte velikost pole pomocí kódu Excel VBA.

  • Krok 1: Začněme nejprve základním, deklarujte proměnnou ve VBA jako datový typ varianty.

Kód:

Sub Array_Size () Dim MyArray jako varianta End Sub
  • Krok 2: Pro tuto proměnnou použijte funkci ARRAY a přiřaďte některé hodnoty, jak je uvedeno níže.

Kód:

Sub Array_Size () Dim MyArray As Variant MyArray = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") End Sub
  • Krok 3: Dobře, přiřadili jsme některé hodnoty názvu pole „MyArray“.

Předpokládejme, že pokud potřebujeme napsat smyčku pro uložení těchto hodnot pole do buněk, musíme se rozhodnout, kolikrát má smyčka běžet. To závisí na počtu hodnot, které pole má.

Dobře, teď se podívejme na počet hodnot přiřazených názvu pole „MyArray“, poli je přiřazeno celkem 7 hodnot, takže teď víme, kolikrát musí smyčka běžet, aby se hodnoty pole uložily do buněk .

  • Krok 4: Deklarujte jinou proměnnou jako celé číslo pro zápis smyčky FOR ve VBA.

Kód:

Sub Array_Size () Dim MyArray As Variant MyArray = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") Dim k As Integer For k = 1 To 7 Další k Konec Sub
  • Krok 5: Tam jdeme, otevřeli jsme smyčku FOR počínaje 1 až 7, uvnitř smyčky zapisujte vlastnost CELLS a uložte ji, jak je znázorněno níže.

Kód:

Sub Array_Size () Dim MyArray As Variant MyArray = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") Dim k As Integer For k = 1 To 7 Buňky (k, 1). Hodnota = MyArray (k) Další k Konec Sub
  • Krok 6: Dobře, nyní proveďte kódový řádek po řádku stisknutím funkční klávesy F8. Při prvním stisknutí klávesy F8 se inicializuje makro.
  • Krok 7: Stisknutím klávesy F8 nyní přejdete na řádek přiřazující hodnotu pole.
  • Krok 8: Název pole „MyArray“ již nemá žádné hodnoty, stiskněte klávesu F8 a všechny uvedené hodnoty budou přiřazeny proměnné pole.
  • Krok 9: Nyní začne fungovat smyčka a dvakrát stiskněte klávesu F8 a uvidíte, jakou hodnotu dostaneme v buňce A1.
  • Jejda !!! Počkejte, naše první hodnota v proměnné pole je „Jan“, ale výsledek máme jako druhou hodnotu „Feb“, když stále běží první smyčka hodnot.
  • Krok 10: Je to proto, že když počet hodnot vašeho pole začíná od nuly, ne od 1, musíme začáteční smyčku zahrnout jako nulu.
  • Krok 11: Jakmile se počáteční pozice smyčky sníží o jeden, podobně končící by se měl snížit také o 1, takže udělejte konec jako 6 místo 7.
  • Krok 12: Jakmile se začátek a konec smyčky rozhodli ještě o jednu vylepšení, musíme udělat, tj. Ve vlastnosti CELLS jsme jako dynamický výběr buněk použili proměnnou „k“, ale protože naše smyčka začíná od nuly, žádná buňka začíná nulou , tak přidejte plus 1 do proměnné „k“.

Kód:

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 Buňky (k + 1, 1). Hodnota = MyArray (k) Další k Konec Sub
  • Krok 13: Takže nyní při spuštění smyčky je poprvé hodnota „k“ nula a protože jsme přidali plus 1, hodnota „k“ bude 1, takže odkazuje na buňku A1.
  • Krok 14: Nyní spusťte kód a všechny hodnoty pole budou uloženy v buňkách.

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
  • Krok 3: Ok, nyní začněte řádek po řádku a stiskněte klávesu F8, dokud nedosáhne počátečního bodu smyčky.
  • Krok 4: Nyní nejprve umístěte kurzor na „LBound (MyArray)“ a podívejte se, co říká.
  • Krok 5: Počáteční číslo, které říká, že je nula, nyní umístěte kurzor na „UBound (MyArray)“ a podívejte se, co říká.

Říká, že velikost pole je 6, takže podobně, jak jsme se zmínili o ručním zahájení a ukončení, UBOUND a LBOUND automaticky vybírají čísla za nás.

Zajímavé články...