Мониторинг обменных курсов валют
18c0693f

Разбираем многострочный If на примерах


Вспомним недавнюю задачу: Если a не равно 4, выполнить операторы b=3 и Debug.WriteLine(b), а в противном случае - операторы  b=0,  a=b+5  и  с=0. Вот однострочный оператор If, решающий эту задачу:

        If    a <> 4    Then    b = 3 : Debug.WriteLine(b)    Else    b = 0 : a = b + 5 :

c = 0

Однако, часто количество операторов после Then и Else бывает гораздо большим, да и сами эти операторы бывают гораздо более сложными и длинными. В этом случае строка становится неудобочитаемой, да и вообще не умещается на ширине экрана. Для таких случаев создан многострочный (или блочный) оператор If. Вот как решается наша задача с его помощью:

        If a <> 4 Then

            b = 3

            Debug.WriteLine(b)

        Else

            b = 0

            a = b + 5

            c = 0

        End If

Конструкция End If означает просто, что в этом месте оператор If заканчивается.

Часть Else может и отсутствовать. Например,

        If a <> 4 Then

            b = 3

            Debug.WriteLine(b)

        End If

Самое замечательное в блочном If то, что здесь можно одно за другим проверять несколько условий. Проиллюстрирую на примерах.

Задача: В компьютер вводится число a. Компьютер должен: