Pętla For Each…Next

Pętla For…Next musi zawierać z góry ustaloną liczbę elementów. Jest przydatna, gdy wiemy, że chcemy np. odczytać zawartość kolejnych 10 komórek. A co jeśli nie wiemy ile jest dokładnie komórek? Np. użytkownik zaznaczył pewien zakres i chcemy wyświetlić po kolei zawartość każdej kolejnej komórki z zaznaczenia. Wtedy z pomocą przychodzi konstrukcje For Each…Next

Poniższy przykład wyświetla zawartość (po kolei) każdej z zaznaczonych komórek, oraz dodatkowo je pogrubia.

Sub TestForEach()
    Dim Kom As Range
    
    For Each Kom In Selection
        MsgBox Kom.Value
        Kom.Font.Bold = True
    Next Kom
End Sub