Dinamički niz u Excelu VBA - Jednostavne makroe Excel

Sadržaj

Ako se veličina vašeg niza povećava i ne želite popraviti veličinu niza, možete koristiti Ključna riječ ReDim. Excel VBA zatim automatski mijenja veličinu niza.

Dodajte neke brojeve u stupac A.

Postavite naredbeni gumb na radni list i dodajte sljedeće retke koda:

1. Prvo, deklariramo niz pod nazivom numbers. Također deklarirajte dvije varijable tipa Integer. Jedna imenovana veličina i jedna po imenu i.

Zatamnjivanje brojeva () Kao cijeli broj, veličina kao cijeli broj, i kao cijeli broj

Napomena: polje još nema veličinu. brojevi, veličina i ja ovdje su nasumično odabrani, možete koristiti bilo koja imena. Ne zaboravite se pozivati ​​na ta imena u ostatku koda.

2. Zatim određujemo veličinu niza i spremamo ga u promjenjivu veličinu. Za to možete koristiti funkciju radnog lista CountA. Dodajte sljedeći kodni redak:

size = WorksheetFunction.CountA (Radni listovi (1). Stupci (1))

3. Sada znamo veličinu niza i možemo ga ponovno dimenzionirati. Dodajte sljedeći kodni redak:

ReDim brojevi (veličina)

4. Zatim inicijaliziramo svaki element niza. Koristimo petlju.

Za i = 1 Prema veličini
brojevi (i) = Ćelije (i, 1) .Vrijednost
Sljedeći i

5. Prikazujemo zadnji element niza pomoću MsgBox -a.

MsgBox brojevi (veličina)

6. Izađite iz programa Visual Basic Editor i kliknite naredbeni gumb na listu.

Proizlaziti:

7. Sada da biste jasno vidjeli zašto se to zove dinamički niz, dodajte broj u stupac A.

8. Ponovno kliknite gumb za naredbu.

Zaključak: Excel VBA automatski je promijenio veličinu ovog dinamičkog niza.

9. Kada koristite ključnu riječ ReDim, brišete sve postojeće podatke koji su trenutno pohranjeni u nizu. Na primjer, prethodno kreiranom kodu dodajte sljedeće retke koda:

ReDim brojevi (3)
MsgBox brojevi (1)

Proizlaziti:

Niz je prazan.

10. Kada želite sačuvati podatke u postojećem nizu pri ponovnoj dimenziji, upotrijebite ključnu riječ Preserve.

ReDim Brojevi za očuvanje (3)
MsgBox brojevi (1)

Proizlaziti:

Vi ćete pomoći u razvoju web stranice, dijeljenje stranicu sa svojim prijateljima

wave wave wave wave wave