Операторы If-Then и If-Then-Else.



Оператор If…Then... Else применяется, когда нужно проверить соответствие одному условию и в случае соответствия сделать какое-то действие, а в случае несоответствия выполнить другое действие:

Синтаксис составного условного оператора, если Вы пишите программу структурно, следующий:

                           

If <логическое выражение> Then

P1

P2

.

.

PN

Else

M1

M2

.

.

MN

End If     

 

    Да                                              Нет                

 

 

                                 

 

Возможна и другая запись (в одну строку):

If <лог. выраж.> Then P1 : P2 : ... : PN Else M1 : M2 : ... MN

где If, Then, Else, End If - зарезервированные слова, а P1, P2,PN, M1, M2,MN – операторы.

Если Логические выражение принимает значение True, то выполняется инструкция (оператор, или инструкции, операторы) после Then, если False, то выполняется инструкция (или инструкции) после Else. Ветвь Else является необязательной.

If nTemperature < 10 Then

MsgBox "Одеть куртку"

Else

MsgBox "Одеть ветровку"

End If

Оператор If с несколькими альтернативами.

Синтаксис многозначных ветвлений, если Вы пишите программу структурно, следующий:

If <лог. выражение1> Then

P1

ElseIf <лог. выражение2> Then

P2

ElseIf <лог. выражение3> Then

P3

Else

P4

End If

 

Возможна и другая запись (в одну строку):

If <лог. выражение1> Then P1 ElseIf <лог. выражение2> Then P2 ElseIf <лог. выражение3> Then P3 Else P4  

где If, Then, Else, End If - зарезервированные слова, а P1, P2,P3 P4,- операторы

Когда нужно проверить на соответствие нескольким условиям возможна запись:

If (nTemperature < 10) And (bRain = True) Then

MsgBox "Одеть куртку и взять зонтик"

End If

Некоторые замечания по использованию If…Then... Else:

- ключевое слово Then должно находиться в одной строке с If и условием. Если вы перенесете его на следующую строку, будет выдано сообщение об ошибке;

- если разместить команду, которую нужно выполнить при истинности проверяемого условия, на одной строке с If и Then, то End If можно не писать:

If nTemperature < 10 Then MsgBox "Одеть куртку"

- если же вы используете несколько команд или конструкции Else/ElseIf, то End If в конце нужно писать обязательно – иначе возникнет синтаксическая ошибка.

- операторы If…Then можно вкладывать друг в друга:

If MyVar1 = 5 Then

MsgBox “MyVar1 = 5”

If MyVar2 = 10 Then

MsgBox “MyVar2 = 10”

End If

End If

Оператор Select Case.

Оператор Select Case идеально подходят для проверки одного и того же значения, которое нужно много раз сравнить с разными выражениями. Синтаксис его следующий:

Select Case sDayOfWeek

Case "Понедельник"

MsgBox "Салат из шпината"

Case "Вторник"

MsgBox "Салат из морской капусты"

Case Else

MsgBox "На этот день у нас ничего не предусмотрено"

End Select

Некоторые замечания по поводу Select Case:

- строка Case "Понедельник" на самом деле означает Case sDayOfWeek = "Понедельник", просто такое равенство подразумевается по умолчанию. Возможно использование набора операторов:

Case 0 To 5, 15, Is > 55

MsgBox "Напомнить о прививках"

- при использовании диапазона (0 To 5) включаются и границы диапазона (в данном случае 0 и 5).

Объявление одномерных массивов. Доступ к элементам одномерных массивов.

Как и в других языках программирования, в VBA вы можете использовать массивы.

Dim A(12) As Integer

Эта строка объявляет одномерный массив (вектор) из 12 целых чисел, причем по умолчанию первый элемент массива будет А(0), а последний А(11). В этом случае говорят, что 0 — базовый индекс. Можно изменить базовый индекс, написав в начале листа модуля инструкцию Option Base 1. После этого индексы массивов аив будут начинаться с единицы. Другим способом изменения базового индекса является использование ключевого слова то при объявлении массива:

Dim B(l То 3, 1 То 3) As Single

Dim A(l To 12) As Integer

Массив в программе определяется поэлементно. Например,

Dim B(l To 2, 1 То 2) As Single

B(1,1)=2

В(1,2)=4

В(2,1)=1

В(1,2)=6


Дата добавления: 2018-04-15; просмотров: 348; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!