Toto jsou stránky správných chlapů,kteří chtějí mít přehled o všem novém rádi se přiučí a pobaví.


For...Next=udělej to Y-krát
Smyčky jsou části programu, které se opakují, dokud se nesplní, co jste chtěli. Můžou se opakovat: buď několikrát, tedy tolikrát, kolikrát předem zadáte, nebo dokud se nesplní podmínka. Můžete se tedy zeptat, kolik je uživateli let 3× a potom vybrat nepravěpodobnější, nebo nejčastější možnost, nebo se ho ptát, dokud nezadá správný údaj (tedy číslo nižší než 80, atd. ...). Smyčka For ... Next udělá blok kódu tedy několikrát:
For x = 0 To 10 'Udělej to tolikrát, než se z x (teď je to nula) stane 10
MsgBox "Nazdar po " & x & "."
Next 'Konec bloku smyčky

Tak to bychom měli. A teď trocha individuákního interativizmu:
<SCRIPT language="VBScript">
<!--
Option Explicit
Dim x, kolikrat
kolikrat = InputBox("Tak kolikrát tě mám dneska pozdravit?")
For x = 0 To kolikrat
 MsgBox "Tohle jest podrav číslo " & x & "."
Next
-->
</SCRIPT>


Pokud bychom si však vymysleli, že nechceme, aby to šlo po jedné, můžeme přihodit atribut Step, který určuje po kolika se má "skákat":
<SCRIPT language="VBScript">
<!--
Option Explicit
Dim x, kolikrat
kolikrat = InputBox("Tak kolikrát tě mám dneska pozdravit (pouze sudé pozdravy)?")
For x = 0 To kolikrat Step 2
 MsgBox "Tohle jest podrav číslo " & x & "."
Next
-->
</SCRIPT>

No a kdyby to mělo bý počítání "pozpátku", tedy sestupně, od 10ti k 5i, jednoduše nastavíme Step na -1:
<SCRIPT language="VBScript">
<!--
Option Explicit
Dim x, kolikrat
kolikrat = InputBox("Tak tentokrát zdravíme od konce na začátek. Tak kolikrát?")
For x = 0 To kolikrat Step -1
 MsgBox "Tohle jest podrav číslo " & x & "."
Next
-->
</SCRIPT>

Do...Loop=dělej to, dokud to nebude tak a tak
Smyčka typu "udělej to xkrát" je sice jednoduchá, ale s tím bychom si většinou neystačily. Většinou je třeba zachovat se interaktivně dle chování uživatele. Na to je smyčka Do...Loop, která dělá, dokud je/není podmínka splněna. To podle nastavení atributem While - opakuj, pokud platí a Until - dělej, dokud to není pravda. Until je tedy obdobou jakéhosi While Not:
<SCRIPT language="VBScript">
<!--
Option Explicit
Dim cislo
While Not cislo < 10 And cislo > 5
cislo = InputBox("Zadej číslo menší než 10 a zároveň větší než 5 " & _
 "(Pokud bude špatné, zeptám se znova):")
WEnd
MsgBox "Děkuji, že jsi zadal " & cislo & ". Je to správně, protože " & _
 cislo & " je menší než 10 a větší než 5.", vbExclamation
-->
</SCRIPT>

While...WEnd=totéž co Do...Loop
While...WEnd je vlastně obdoba Do While...Loop:
<SCRIPT language="VBScript">
<!--
Option Explicit
Dim cislo
Do Until cislo < 10 And cislo > 5
cislo = InputBox("Zadej číslo menší než 10 a zároveň větší než 5 " & _
 "(Pokud bude špatné, zeptám se znova):")
Loop
MsgBox "Děkuji, že jsi zadal " & cislo & ". Je to správně, protože " & _
 cislo & " je menší než 10 a větší než 5.", vbExclamation
-->
</SCRIPT>

Vnořené bloky=vkládání bloků a smyček do sebe
Bloky a smyčky jdou do sebe samozřejmě vkládat, tzv. vnořovat. Malá ukázka testu uživatele:
<SCRIPT language="VBScript">
<!--
Option Explicit
Dim pohlavi, osloveni, vek
Dim cislo, prip, zbytek
If MsgBox("Ahoj, uživateli. Mohu ti nabídnout malý dotazník?", vbQuestion+vbYesNo) = vbYes Then
 Do Until pohlavi = "muž" Or pohlavi = "žena"
  pohlavi = InputBox("Teď mi řekni, zda jsi muž či žena (napiš ""muž"" nebo ""žena""):")
 Loop
 Select Case pohlavi
  Case "muž"
   osloveni = "Vážený pane"
   prip = ""
  Case "žena"
   osloveni = "Mladá paní"
   prip = "a"
 End Select
 Do Until vek < 80 And vek > 0
  vek = InputBox("A kolik ti je?")
 Loop
 zbytek = 80 - vek
 Do Until cislo < 100 And cislo > 0
  cislo = InputBox("A teď se zeptám:Jaké je tvé oblíbné číslo od 0 do 100?")
 Loop
  MsgBox osloveni & ", děkuji, že jste absolboval" & prip & _
   " tento dotazník, ve kterém bylo vnořeno všechno možné do" & _
   " hlavního dotazu, zda se má dotazník vůbec spustit. Je" & _
   " podivné, že ač je Vám " & vek & " let, je Vaše oblíbené číslo " & _
   cislo & ". Přeji Vám hodně štěstí v následujících " & zbytek & _
   " letech života!", vbInformation
End If
-->
</SCRIPT>