VBA slučka v poli / pre každú položku v poli

Tento tutoriál vás naučí, ako prechádzať poliami vo VBA.

Existujú dva hlavné spôsoby, ako prechádzať poliami pomocou VBA:

  • Pre každú slučku - For For Loop bude prechádzať každou položkou v poli.
  • Pre ďalšiu slučku - Slučka For Next Loop bude prechádzať zadanými počiatočnými a koncovými polohami poľa (Na prechod cez celé pole môžeme použiť funkcie UBound a LBound).

Pre každú položku v poli

The Pre každú slučku vám umožňuje prechádzať každým prvkom poľa.

12345678910111213141516171819 Sub LoopForArrayStatic ()'deklarujte variantné poleDim strNames (1 až 4) ako reťazec"naplňte pole."strNames (1) = "Bob"strNames (2) = "Peter"strNames (3) = "Keith"strNames (4) = "Sam"'deklarujte variant, ktorý bude držať prvok poľaTmavú položku ako variant'cez celé polePre každú položku v strNames'zobraziť prvok v okne ladenia.Debug.Print položkaSlučkaKoniec pod

Vyššie uvedený postup bude prechádzať všetkými názvami v poli.

Pre ďalšiu slučku

Slučka For Next Loop bude prechádzať každou položkou v zadanej počiatočnej a koncovej polohe poľa.

Smyčka cez časť poľa

Začiatočné a koncové polohy slučky môžete manuálne určiť. To môže byť vhodné, ak poznáte veľkosť svojho poľa a/alebo chcete iba previesť časť poľa.

12345678910111213141516 Sub LoopForNextStatic ()'deklarujte variantné poleDim strNames (1 až 4) ako reťazec"naplňte pole."strNames (1) = "Bob"strNames (2) = "Peter"strNames (3) = "Keith"strNames (4) = "Sam"'deklarovať celé čísloDim i As Integer'slučka z polohy 2 do polohy 3 poľaPre i = 2 až 3'zobraziť meno v bezprostrednom okneDebug.Print strNames (i)Ďalej iKoniec pod

Vo vyššie uvedenom príklade sme prešli cez pozície 2 a 3 poľa. Okamžité okno vráti názvy nasledovne.

Smyčka cez celé pole

Ďalej použijeme funkcie UBound a LBound na slučku celým poľom. Je to veľmi užitočné, ak sa počiatočná a koncová pozícia poľa môžu zmeniť (napríklad dynamické pole):

123456789101112131415161718 Sub LoopForNextDynamic ()'deklarujte variantné poleDim strNames () ako reťazec'inicializujte poleReDim strNames (1 až 4)“naplňte polestrNames (1) = "Bob"strNames (2) = "Peter"strNames (3) = "Keith"strNames (4) = "Sam"'deklarovať celé čísloDim i As Integer'slučka od spodnej hranice poľa k hornej hranici poľa - celého poľaPre i = LBound (strNames) Do UBound (strNames)'zobraziť meno v bezprostrednom okneDebug.Print strNames (i)Ďalej iKoniec pod

Vám pomôže rozvoju miesta, zdieľať stránku s priateľmi

wave wave wave wave wave