zpět na výpis    domů » excel » VBA: cyklus For ... Next i

VBA: cyklus For ... Next i

Publikováno: 8.6.2017

VBA: cyklus For ... Next i

Cyklus For ... Next patří mezi nejpoužívanější cykly napříč všemi programovacími jazyky. Jeho úkolem je opakovat příkaz nebo skupinu příkazů uvnitř těla cyklu tak dlouho, dokud není dosaženo stanovené meze.

Kroky cyklu lze nastavit pomocí krokování Step, které zvyšuje či snižuje vnitřní čítač cyklu o stanovenou hodnotu.

Sub procedura()

Dim i As Byte

For i = dolní mez To horní mez Step délka kroku
  příkazy
Next i

End Sub

TIP: Editor VBA pro psaní kódu vyvoláte stisknutím kláves ALT + F11.

Cyklus For ... Next i v praxi #1

Následující procedura vypíše do sloupce A deset čísel dle stanoveného intervalu s krokováním 1.

Sub Deset()

deklarace proměnné
Dim i As Byte

For i = 1 To 10
  Cells(i, 1).Value = i
Next i

End Sub

Následující obrázek obsahuje výsledek procedury.

Cyklus For ... Next i - výpis deseti čísel

Cyklus For ... Next i v praxi #2

Následující procedura vypíše do sloupce A lichá čísla na intervalu 1 až 10. Toho lze docílit nastavením krokování na hodnotu 2.

Sub Pet()

deklarace proměnné
Dim i As Byte

For i = 1 To 10 Step 2
  Cells(i, 1).Value = i
Next i

End Sub

Následující obrázek obsahuje výsledek vykonané procedury.

Cyklus For ... Next i - výpis lichých čísel

Cyklus For ... Next i v praxi #3

Následující procedura vypíše do sloupce A deset čísel s rostoucí velikostí fontu. Velikost fontu je upravena pomocí Font.Size.

Sub velikostFontu()

deklarace proměnné
Dim i As Byte

For i = 1 To 10
  Cells(i, 1).Value = i
  Cells(i, 1).Font.Size = i * 5
Next i

End Sub

Výsledek vykonané procedury můžete vidět na následujícím obrázku.

Cyklus For ... Next i - výpis deseti čísel s rostoucím fontem

Cyklus For ... Next i v praxi #4

Další procedura vypíše do sloupce A názvy všech listů v sešitě. Počet listů v sešitě je zjištěn pomocí Sheets.Count a vložen do proměnné pocetlistu, která v cyklu slouží jako horní mez pro počet opakování.

Sub nazvyListu()

deklarace proměnných
Dim i As Byte, pocetlistu As Byte

vložení počtu listů v sešitě do proměnné
pocetlistu = Sheets.Count

For i = 1 To pocetlistu
  Cells(i, 1)= Sheets(i).Name
Next i

End Sub

Cyklus For ... Next i v praxi #5

Následující procedura otestuje, zda je v buňkách A1:A8 číslo či nikoliv. Vedle testované buňky vypíše hlášku o charakteru hodnoty v buňce. Je-li v buňce číslo, je vypsána hláška "Je číslo". Je-li v buňce text, je vypsána hláška "Není číslo".

Pomocí Font.Color je každé nalezené číslo obarveno zelenou barvou. Pro vlastnost Color je zadána funkce RGB, která má 3 argumenty (červená barva, zelená barva, modrá barva). Argumenty mohou nabývat hodnot 0 až 255.

Sub jeCislo()

deklarace proměnné
Dim i As Byte

For i = 1 To 8
  If IsNumeric(cells(i, 1)) Then
    Cells(i, 1).Font.Color = RGB(0, 255, 0)
    Cells(i, 1).Offset(, 1) = "Je číslo"
  Else
    Cells(i, 1).Offset(, 1) = "Není číslo"
  End If
Next i

End Sub

Výsledek vykonané procedury můžete vidět na následujícím obrázku.

Cyklus For ... Next i - testování hodnoty v buňce

Chcete vědět o každém novém článku? Sledujte Finance v praxi na sociálních sítích a zůstaňte ve spojení.

Google+

Sdílejte článek na sociálních sítích

Použité zdroje a literatura
  • BENÁČANOVÁ H.: Tvorba aplikací v Microsoft Office Excel 2. část. Možnosti VBA. Vysoká škola ekonomická v Praze, nakladatelství Oeconomica 2009, Praha. První vydání, 126 stran. ISBN 978-80-245-1602-8
  • Nápověda k aplikaci MS Excel
Nahoru