VBA silmus läbi massiivi / iga massiivi üksuse kohta

Lang L: none (table-of-contents)

See õpetus õpetab teile, kuidas VBA -s massiive läbi vaadata.

Massiividest VBA abil saab läbi viia kaks peamist viisi:

  • Iga silmuse jaoks - Iga silmuse jaoks vaatab massiivi iga üksuse läbi.
  • Järgmise silmuse jaoks - For For Next Loop vaatab läbi massiivi määratud algus- ja lõpppositsioonid (kogu massiivi läbimiseks saame kasutada funktsioone UBound ja LBound).

Iga üksuse kohta massiivis

The Iga silmuse jaoks võimaldab teil massiivi igast elemendist läbi vaadata.

12345678910111213141516171819 Sub LoopForArrayStatic ()'deklareerida massiivi variantDim strNames (1 kuni 4) stringina'täitke massiivstrNames (1) = "Bob"strNames (2) = "Peeter"strNames (3) = "Keith"strNames (4) = "Sam"'kuuluta massiivielemendi hoidmiseks variantHämarda objekt variandina'ringi läbi kogu massiiviIga üksuse jaoks strNames'näita elementi silumisaknas.Silumine. Prindi üksusLoopEnd Sub

Ülaltoodud protseduur vaatab läbi kõik massiivi nimed.

Järgmise silmuse jaoks

Järgmise silmuse jaoks ringleb iga üksus läbi massiivi määratud algus- ja lõpppositsiooni.

Korda osa massiivist läbi

Saate silmuse algus- ja lõpppositsiooni käsitsi määrata. See võib olla asjakohane, kui teate oma massiivi suurust ja/või soovite ainult massiivi mõnest osast läbi vaadata.

12345678910111213141516 Sub LoopForNextStatic ()'deklareerida massiivi variantDim strNames (1 kuni 4) stringina'täitke massiivstrNames (1) = "Bob"strNames (2) = "Peeter"strNames (3) = "Keith"strNames (4) = "Sam"'deklareerige täisarvDim i As täisarv'silmus massiivi 2. positsioonilt 3. positsioonileSest i = 2 kuni 3'näita nime aknasSilumine. Prindi strNames (i)Edasi iEnd Sub

Ülaltoodud näites oleme silmusesse jõudnud massiivi 2. ja 3. positsiooni. Vahetu aken tagastab nimed järgmiselt.

Korda kogu massiivi

Järgmisena kasutame UBoundi ja LBoundi funktsioone terve massiivi läbimiseks. See on äärmiselt kasulik, kui massiivi algus- ja lõpppositsioon võivad muutuda (nt dünaamiline massiiv):

123456789101112131415161718 Sub LoopForNextDynamic ()'deklareerida massiivi variantDim strNames () stringina'initsialiseeri massiivReDim strNames (1 kuni 4)'täitke massiivstrNames (1) = "Bob"strNames (2) = "Peeter"strNames (3) = "Keith"strNames (4) = "Sam"'deklareerige täisarvDim i As täisarv'silmus massiivi alumisest piirist massiivi ülemise piirini - kogu massiivI = LBound (strNames) kuni UBound (strNames)'näita nime aknasSilumine. Prindi strNames (i)Edasi iEnd Sub

Te aitate arengu ala, jagades leht oma sõpradega

wave wave wave wave wave