If Then PHP

Оператор If Then в VBA та його варіації. Урок №27

If … Then в VBA – це оператор умовного переходу, за допомогою якого можна змінювати послідовність виконання програми, виходячи з результатів дотримання деяких умов.

Тобто, при обчисленні якоїсь умови, якщо вона виконується, буде отримано результат (значення) True і як наслідок, програма приступить до виконання блоку операторів, які задані в If…Then.

Якщо ж, при обчисленні, умова не виконується, то буде отримано результат (значення) False і оператор If…Then нічого не робитиме.

Перший (однорядковий) варіант застосовується в тому випадку, якщо в операторі If…Then виконується лише один оператор.

Приклад однорядкового оператора If…Then

Sub myCode()
    userAge = InputBox("Скільки вам років?") 'виводимо вікно в якому просимо щоб користувач ввів свій вік
     
    If userAge < 18 Then MsgBox "Ви ще неповнолітній (неповнолітня)"
End Sub

В цьому прикладі весь наш код розміщений в одному рядку і оператор тут тільки один.

Другий (багаторядковий) варіант застосовується в тому випадку, якщо потрібно виконати не один оператор, а цілий блок операторів які послідовно йдуть один за одним.

В такому випадку, умова, що перевіряється, і виконувані оператори записуються в окремих рядках.

Якщо результат умовного виразу True, то програма почне виконувати групу операторів послідовно, починаючи з того оператора, який вказано після ключового слова Then і закінчуючи оператором завершення End If.

Приклад багаторядкового оператора If…Then

Sub myCode()
    userAge = InputBox("Скільки вам років?") 'виводимо вікно в якому просимо щоб користувач ввів свій вік
     
    If userAge < 18 Then
        MsgBox "Ви ще неповнолітній (неповнолітня)"
        MsgBox "Приходьте коли вам виповниться 18 років"
    End If
    
    MsgBox "Це повідомлення користувач побачить незалежно від того, який вік він вказав"
End Sub

У цьому прикладі користувач побачить вікно з проханням ввести свій вік. Якщо вік менше 18 років, то результат умовного виразу буде True, і тому програма почне послідовно виконувати оператори, вказані після ключового слова Then. Тобто спочатку користувач побачить повідомлення "Ви ще неповнолітній (неповнолітня)", потім "Приходьте, коли вам виповниться 18 років", а після цього програма продовжить послідовне виконання коду, і користувач побачить ще й повідомлення "Це повідомлення користувач побачити незалежно від того, який вік він вказав".

Якщо ж користувач введе вік більше 18 років, то результат умовного виразу буде False. Тому програма пропустить все, що знаходиться між Then і End If (включно), і продовжить своє виконання з оператора, який слідує відразу після End If. Тобто користувач побачить лише повідомлення "Це повідомлення користувач побачить незалежно від того, який вік він вказав".

Варіації If...Then...Else та If...Elself

Умовний оператор If...Then має варіації:

  • If...Then...Else
  • If...Elself 

Так само як If…Then, вони можуть бути записані в один або кілька рядків.

Принцип запису коду той самий - якщо виконується лише один оператор, то можна записати код в один рядок і не використовувати ключове слово End If. Якщо ж потрібно послідовно виконати блок операторів, то в такому разі умовний вираз і оператори, що виконуються, записуються в різних рядках.

Приклад

Sub myCode()
    userAge = InputBox("Скільки вам років?") 'виводимо вікно в якому просимо щоб користувач ввів свій вік
     
    If userAge < 18 Then
        MsgBox "Ви ще неповнолітній (неповнолітня)"
        MsgBox "Бажаєте спробувати ще?"
    Else
        MsgBox "Добре що вам вже є 18 років"
    End If
    
    MsgBox "Це повідомлення користувач побачить незалежно від того, який вік він вказав."
End Sub

В даному прикладі, після того, як користувач вводить свій вік, відбувається перевірка. В результаті, якщо користувач ввів цифру менше 18, то будуть виведені повідомлення "Ви ще неповнолітня (неповнолітня)", "Бажаєте спробувати ще?" і "Це повідомлення користувач побачить незалежно від того, який вік він вказав." (Останнє повідомлення виводиться незалежно від того, який у користувача вік. Воно поза умовним виразом).

Якщо користувач ввів цифру 18 (або більше), то буде виведено повідомлення "Добре, що вам вже є 18 років" і "Це повідомлення користувач побачити незалежно від того, який вік він вказав."

Приклад

Sub myCode()
    userAge = InputBox("Скільки вам років?") 'виводимо вікно в якому просимо щоб користувач ввів свій вік
     
    If userAge <= 6 Then
        MsgBox "Ви дошкільня"
    ElseIf userAge <= 17 Then
        MsgBox "Ви школяр"
    ElseIf userAge <= 23 Then
        MsgBox "Ви студент"
    ElseIf userAge <= 55 Then
        MsgBox "Ви спеціаліст"
    End If
End Sub

У даному прикладі послідовно виконується перевірка умов. Якщо перша умова True, тобто користувач ввів вік менше 6 років, виконується перший блок операторів (виводиться повідомлення "Ви дошкільня"). Якщо перша умова False (введений вік більше 6), то програма переходить до обчислення другої умови. І так до останньої умови, поки не буде отримано результат True. Якщо ж у жодному умовному виразі не буде значення True, то програма нічого не робитиме (ніяких повідомлень не буде).

Приклад

Sub myCode()
    userAge = InputBox("Скільки вам років?") 'виводимо вікно в якому просимо щоб користувач ввів свій вік
     
    If userAge = 6 Then
        MsgBox "Вам 6 років"
    ElseIf userAge = 17 Then
        MsgBox "Вам 17 років"
    ElseIf userAge = 23 Then
        MsgBox "Вам 23 роки"
    ElseIf userAge = 55 Then
        MsgBox "Вам 55 років"
    End If
End Sub

У цьому прикладі здійснюється перевірка на рівність. І якщо користувач введе 6, 17, 23 або 55, то програма буде виконувати відповідний блок операторів.

Якщо ж користувач введе якісь інші цифри, то результат обчислення всіх умов буде False і програма нічого не робитиме (ніяких повідомлень користувач більше не побачить).

Вкладені оператори If…Then

Іноді, при написанні програм, для того щоб виконати якусь дію, виникає необхідність перевірити не одну, а кілька умов. У такому випадку можна розмістити (вкласти) один оператор If…Then всередині іншого.

Така дія називається вкладенням операторів.

Принцип дії вкладених операторів, наступний:

  1. Якщо значення першої умови True, програма переходить до наступної перевірки (виконується вкладена умова).
  2. Якщо значення першої умови False, то програма не буде виконувати вкладені оператори, а перейде до виконання тих операторів, які йдуть після ключового слова Else.

Приклад вкладення операторів If…Then

Sub myCode()
    userAge = InputBox("Скільки вам років?") 'виводимо вікно в якому просимо щоб користувач ввів свій вік
     
    If userAge > 0 Then
        If userAge <= 17 Then
        MsgBox "Вам від 1 до 17 років"
        End If
    Else
        MsgBox "Вам більше 17 років"
    End If
End Sub

Main Menu