Ak sa veľkosť vášho poľa zvýši a nechcete veľkosť poľa opraviť, môžete použiť Kľúčové slovo ReDim. Excel VBA potom automaticky zmení veľkosť poľa.
Pridajte niekoľko čísel do stĺpca A.
Na pracovný hárok umiestnite príkazové tlačidlo a pridajte nasledujúce riadky kódu:
1. Najprv deklarujeme pole pomenované čísla. Tiež deklarujte dve premenné typu Integer. Jedna menovaná veľkosť a jedna pomenovaná i.
Dim čísla () ako celé číslo, veľkosť ako celé číslo, i ako celé číslo
Poznámka: pole zatiaľ nemá žiadnu veľkosť. Tu sa náhodne vyberú čísla, veľkosť a ja, môžete použiť akékoľvek mená. Na tieto názvy sa vo zvyšku kódu odvolávajte.
2. Ďalej určíme veľkosť poľa a uložíme ho do premennej veľkosti. Na to môžete použiť funkciu pracovného hárka CountA. Pridajte nasledujúci riadok kódu:
size = WorksheetFunction.CountA (pracovné listy (1). stĺpce (1))
3. Teraz poznáme veľkosť poľa a môžeme ho redimenzovať. Pridajte nasledujúci riadok kódu:
Čísla ReDim (veľkosť)
4. Ďalej inicializujeme každý prvok poľa. Používame slučku.
Pre i = 1 Do veľkosti
čísla (i) = Bunky (i, 1). Hodnota
Ďalej i
5. Posledný prvok poľa zobrazíme pomocou MsgBox.
Čísla MsgBox (veľkosť)
6. Ukončite editor jazyka Visual Basic a kliknite na príkazové tlačidlo na hárku.
Výsledok:
7. Teraz, aby ste jasne zistili, prečo sa tomu hovorí dynamické pole, pridajte číslo do stĺpca A.
8. Znova kliknite na príkazové tlačidlo.
Záver: Excel VBA automaticky zmenil veľkosť tohto dynamického poľa.
9. Keď použijete kľúčové slovo ReDim, vymažete všetky existujúce údaje aktuálne uložené v poli. Do predtým vytvoreného kódu napríklad pridajte nasledujúce riadky kódu:
Čísla ReDim (3)
Čísla MsgBox (1)
Výsledok:
Pole je prázdne.
10. Ak chcete zachovať údaje v existujúcom poli pri ich redimenzii, použite kľúčové slovo Zachovať.
Zachovať čísla ReDim (3)
Čísla MsgBox (1)
Výsledok: