Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект лекцій.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
7.04 Mб
Скачать
  1. Умовний оператор альтернативи If … Then … Else.


If <умова 1> Then

<блок операторів 1>

ElseIf < умова 2> Then

<блок операторів 2>

ElseIf < умова 3> Then

<блок операторів 3>

……………………..

ElseIf < умова n> Then

<блок операторів n>

Else

<блок операторів гілки Else >

End If

Повний формат цього оператора такий:

З повного формату оператора IfThenElse можна виділити такі частинні випадки:

  • Однострічковий оператор If;

  • Одноблочний оператор If;

  • Багатоблочний оператор If;

  • Повноформатний оператор If.

Однострічковий умовний оператор має формат

If <умова> Then <оператор>

де <умова> - логічний вираз або логічна константа, яка може приймати одне із двох значень: True або False;

<оператор> - будь-який допустимий у мові VBA оператор.

Однострічковий оператор If записується лише в одній стрічці. Його робота полягає в наступному. Якщо <умова> приймає значення True, то виконується <оператор>, записаний після слова Then, у протилежному випадку оператор If пропускається і виконується наступний за ним оператор.

Приклад: Оператор If curОптова ціна> 1000 Then MsgBox “Ціна дуже велика”

Одноблочний умовний оператор має формат:

If <умова> Then

<блок операторів>

End If

В одноблочному умовному операторі після слова Then у стрічці нічого більше не пишеться. У наступних стрічках записані оператори, які входять в <блок операторів>. Закінчується одноблочний умовний оператор стрічкою, у якій записані службові слова End If. Робота одноблочного умовного оператора полягає в наступному. Якщо <умова> приймає значення True, то виконується <блок операторів>, записаний після слова Then, у протилежному випадку оператор If пропускається і виконується оператор, записаний після слів End If.

Приклад. Оператор

If curOптЦіна > 1000 Then

MsgBox „Оптова ціна велика!”

curOnтЦіна = сur OnтЦіна -10

End If

виведе вікно повідомлення з розміщеним у ньому текстом «Оптова ціна велика!» і зменшить значення змінної curOnтЦіна на 10 одиниць, але лише у тому випадку, якщо виконуватиметься умова curOптЦіна > 1000. У протилежному випадку цей оператор буде пропущений.

Багатоблочний умовний оператор має формат:

If <умова 1> Then

<блок операторів 1>

ElseIf < умова 2> Then

<блок операторів 2>

ElseIf < умова 3> Then

<блок операторів 3>

……………………..

ElseIf < умова n> Then

<блок операторів n>

End If

Робота багатоблочного умовного оператора полягає в наступному. Якщо <умова1> приймає значення True, то виконується <блок операторів1>, у протилежному випадку перевіряється <умова2>; якщо <умова2> приймає значення True, то виконується <блок операторів2>, у протилежному випадку перевіряється <умова3>; і т.д., поки не перевіриться < умова n>. Якщо жодна з умов не буде істинною, оператор If пропускається і виконується оператор, записаний після слів End If.

Робота повноформатного багатоблочного умовного оператора, наведеного на початку розділу, здійснюється аналогічно за одним винятком. Якщо жодна з умов не буде істинною, то виконується оператор, записаний після Else.