Объединение текстовых строк
Если надо объединить несколько текстовых строк в одну, используется символ конкатенации &. Его применение, а также применение других символьных констант, используемых при выводе сообщений, на экран показано в приведённой ниже процедуре ОбъединениеСтрок.
Sub ОбъединениеСтрок()
Dim Имя As String
Dim Сообщение As String
Имя = InputBox("Введите ваше имя: ")
'Следующая строка для окна сообщения объединяет
'слово "Привет" со значением переменной Имя
MsgBox "Привет, " & Имя & "!"
Сообщение = "Это пример объединения нескольких"
Сообщение = Сообщение & " строк в одну большую"
Сообщение = Сообщение & " строку." & vbNewLine
Сообщение = Сообщение & "vbNewLine - константа, позволяющая"
Сообщение = Сообщение & " начинать новую строку"
MsgBox Сообщение
End Sub
Ниже приведены результаты выполнения процедуры ОбъединениеСтрок.
2.2.4.1. Инструкция условного перехода If…Then…Else
Инструкция If...Then...Else задает выполнение определенных групп инструкций в зависимости от значения выражения. Она может иметь однострочный и два блоковых формата.
Однострочный формат:
Ifусловие Thenинструкции
Первый блоковый формат:
If условие Then[инструкции] [Else инструкции]
[Else
[инструкции_Else]]
EndIf
Второй блоковый формат:
If условие Then
[инструкции]
[ElseIf условие Then
[инструкции_elseIf]]…
[Else
[инструкции_else]]
EndIf
При этом ElseIf …Тhen может повторяться несколько раз.
В основу этой инструкции положен следующий принцип: если условие выполняется, то выполняются инструкция, находящиеся после Then.
Формат инструкции If...Then...Else содержит следующие элементы:
Элемент инструкции | Описание элемента |
Условие | Обязательный. Одно или более выражений следующих двух типов: численное или строковое выражение, которое приводится к значениям True или False. |
Инструкции | Необязательный в блочной форме, но обязательный в однострочной форме, которая не имеет ветви Else. Один или несколько операторов; выполняются, если Условие имеет значение True. |
Однострочная форма допускает выполнение нескольких инструкций в результате проверки одного условия If…Then. При этом все инструкции должны находиться на одной строке и разделяться двоеточием, как показано в приведенном ниже примере:
Sub IfThenElse ()
Dim a As Single
Dim b As Single
Dim c As Single
a = Range("A1").Value
b = Range("A2").Value
If b = 0 Then MsgBox "Деление невозможно!" Else c = a / b: MsgBox "c=" & c
End Sub
Пример блоковой формы:
Sub IfThenElse1 ()
Dim a As Single
Dim b As Single
Dim c As Single
a = Range("A1").Value
b = Range("A2").Value
If b=0 Then
MsgBox "Деление на ноль невозможно!"
Else
c = a / b
MsgBox "c=" & c
End If
End Sub
Инструкция If…Then... Else применяется в следующих случаях:
1. Нужно проверить на соответствие одному или нескольким условиям и в случае соответствия сделать какое-то действие:
Option Compare Text
––––––––––––––––––––––––––––––––––––––––––––––––––
Sub IfThenElse2()
Dim КурсРаб As String
If Range("a5").Value = "Неуд" Or Range("a5").Value = "" Then
MsgBox "Небходимо защитить курсовую работу "
End If
End Sub
2. Нужно проверить на соответствие одному или нескольким условиям и в случае соответствия сделать какое-то действие, а в случае несоответствия выполнить другое действие:
Sub IfThenElse3()
Dim КурсРаб As String
If Range("a5").Value = "Неуд" Or Range("a5").Value = "" Then
MsgBox "Необходимо защитить курсовую работу"
Else
MsgBox "К экзамену по информатике допущен"
End If
End Sub
Примечание
На уровне стандартного модуля, в котором находится процедура
IfThenElse2, помещена инструкция Option Compare Text. Инструкция Option Compare применяется на уровне модуля перед первой процедурой модуля для задания используемого по умолчанию способа сравнения строковых данных.