VBA Loop Through Array / Minden tömbhöz

Ez az oktatóanyag megtanít arra, hogyan kell cikluson keresztül végigmenni a VBA -n.

A tömbök két fő módja van a VBA használatával:

  • Minden hurokhoz - A For For Loop minden ciklusban végigmegy a tömb minden elemén.
  • Következő hurokhoz - A For Next Loop végigmegy a tömb meghatározott kezdő- és véghelyzetén (Az UBound és az LBound függvényeket használhatjuk a teljes tömb ciklusához).

Minden tömbhöz

Az Minden hurokhoz lehetővé teszi a tömb minden egyes elemének végighurkolását.

12345678910111213141516171819 Sub LoopForArrayStatic ()'deklarálja a változat tömbjétDim strNames (1 -től 4 -ig) karakterláncként'töltse ki a tömbötstrNames (1) = "Bob"strNames (2) = "Péter"strNames (3) = "Keith"strNames (4) = "Sam"'deklaráljon egy változatot a tömb elem megtartásáhozElem halványítása változatként'ciklus az egész tömbönAz strNames minden egyes eleméhez'mutassa meg az elemet a hibakeresési ablakban.Hibakeresés. Elem nyomtatásaHurokEnd Sub

A fenti eljárás végigmegy a tömb összes nevén.

Következő hurokhoz

A Következő hurok a tömb meghatározott kezdő- és véghelyzetén keresztül hurkolja az egyes elemeket.

Loop keresztül tömb része

Manuálisan megadhatja a ciklus kezdő és véghelyzetét. Ez akkor lehet megfelelő, ha ismeri a tömb méretét, és/vagy csak egy tömb egy részén szeretne keresztülmenni.

12345678910111213141516 Sub LoopForNextStatic ()'deklarálja a változat tömbjétDim strNames (1 -től 4 -ig) karakterláncként'töltse ki a tömbötstrNames (1) = "Bob"strNames (2) = "Péter"strNames (3) = "Keith"strNames (4) = "Sam"'deklarálja az egész számotDim i As Integer'hurok a tömb 2. pozíciójától 3. pozíciójáigI = 2 -tól 3 -ig'mutassa a nevet a közvetlen ablakbanHibakeresés. StrNames nyomtatása (i)Következő iEnd Sub

A fenti példában a tömb 2. és 3. pozícióját hurkoltuk végig. A közvetlen ablak a következőképpen adja vissza a neveket.

Húzza át az egész tömböt

Ezután az UBound és az LBound függvényeket használjuk a teljes tömb áthurkolására. Ez különösen akkor hasznos, ha a tömb kezdő- és véghelyzete megváltozhat (például dinamikus tömb):

123456789101112131415161718 Sub LoopForNextDynamic ()'deklarálja a változat tömbjétDim strNames () karakterláncként'inicializálja a tömbötReDim strNames (1-4)'töltse ki a tömbötstrNames (1) = "Bob"strNames (2) = "Péter"strNames (3) = "Keith"strNames (4) = "Sam"'deklarálja az egész számotDim i As Integer'hurok a tömb alsó korlátjától a tömb felső határáig - a teljes tömbI = LBound (strNames) - UBound (strNames) esetén'mutassa a nevet a közvetlen ablakbanHibakeresés. StrNames nyomtatása (i)Következő iEnd Sub

Segít a fejlesztés a helyszínen, megosztva az oldalt a barátaiddal

wave wave wave wave wave