- •Содержание
- •Введение
- •1 Основные понятия языка программирования vba
- •1.1 Элементы языка
- •1.2 Константы
- •1.3 Идентификаторы
- •StrMyName, I, intNumOne, Номер, Max_Len и т.П.
- •1.4 Переменные
- •1.5 Выражения и операции
- •1.6 Массивы
- •1.7 Строки
- •2 Структура программы на vba
- •2.1 Оператор комментария
- •2.2 Оператор присваивания
- •2.3 Оператор вывода и диалоговые окна ввода/вывода информации
- •2.4 Оператор безусловного перехода
- •2.5 Оператор условного перехода
- •2.6 Оператор множественного выбора
- •2.7 Операторы цикла
- •If условие Then Exit For
- •If условие Then Exit Do
- •2.8 Обработка информационных массивов
- •2.9 Процедуры и функции
- •2.10 Обработка строковой информации
- •3 Элементы среды разработки vba
- •3.1 Панель инструментов Стандартная
- •3.2 Элементы управления
- •Лабораторная работа №1 Тема: Инструментальная среда языка программирования vba
- •1) Активизируйте редактор vba.
- •2) Ознакомьтесь с интерфейсом редактора vba.
- •3) Добавьте в окно проекта Стандартный модуль командой меню Вставка/Модуль (Insert/Module).
- •4) Добавьте Форму в окно проекта командой меню Вставка/ UserForm (Insert/ UserForm).
- •Лабораторная работа №2 Тема: Разработка программ линейной структуры в среде vba
- •1) Способ представления алгоритма в виде блок-схемы.
- •2) Линейная структура программы в vba.
- •5) Выполните ввод числовых значений:
- •6) Программа выведет на экран монитора диалоговое окно с результатом вычислений:
- •Индивидуальные задания для самостоятельной работы
- •Задание 1. По предложенной блок-схеме разработать программу. Используя функцию Round, округлить результаты вычислений.
- •Варианты задания 3
- •Лабораторная работа №3 Тема: Разработка программ разветвленной структуры в среде vba
- •1) Понятие разветвленной вычислительной структуры.
- •Индивидуальные задания для самостоятельной работы
- •Лабораторная работа № 4 Тема: Разработка программ циклической структуры в среде vba
- •1) Понятие циклического вычислительного процесса.
- •2) Реализовать данную программу в среде vba Microsoft Excel:
- •3) Внести изменения в программу Пример4 так, чтобы было возможно вычисление суммы любого количества чисел «2».
- •4) Реализовать данную программу в среде vba Microsoft Excel:
- •7) Реализовать данную программу (рис. 22) в среде vba Microsoft Excel. Выполнить вывод заголовков и результатов в окно Immediate:
- •Индивидуальные задания для самостоятельной работы
- •Лабораторная работа № 5 Тема: Разработка программ обработки информационных массивов в среде vba
- •1) Порядок обработки информационного массива.
- •4) Реализовать данную программу в среде vba Microsoft Excel:
- •Лабораторная работа №6 Тема: Разработка программ смешанной структуры в среде vba
- •2) Реализовать данную программу в среде vba Microsoft Excel:
- •Индивидуальные задания для самостоятельной работы
- •Блок-схема алгоритма:
- •Литература
- •Правила изображения блок-схем
- •Указатель
2.4 Оператор безусловного перехода
Операторы перехода применяются в программе для реализации безусловных алгоритмических конструкций. Они выполняют переход с одного участка программы на любой другой без какого-либо условия. Оператор перехода имеет следующий вид:
Go To Метка
Метка - это идентификатор, помещаемый слева от программного оператора и отделенный от него двоеточием. Например:
Dim m1 as Label
. . .
Go To ml
ОПЕРАТОРЫ
ml: Textl.Text = «Это метка» ‘Переход к выводу сообщения в текстовое поле элемента управления TextBox в обход ОПЕРАТОРОВ
2.5 Оператор условного перехода
Операторы условного перехода (выбора) используются в программе для реализации условных алгоритмических конструкций, которые вызывают выполнение различных частей программы в соответствии с условиями, существующими на момент выполнения этих операторов. Одним из важных элементов программного оператора выбора является выражение условия, значением которого может быть истина (True) или ложь (False). Такие выражения-условия записываются с помощью операций отношения.
1) Общая форма оператора условного перехода такова:
If УСЛОВИЕ Then ОПЕРАТОР_1 Else ОПЕРАТОР_2
ОПЕРАТОР_1 выполняется в том случае, если УСЛОВИЕ истинно, в противном случае выполняется ОПЕРАТОР_2.
2) УСЛОВИЕ может задаваться не одним, а несколькими операторами. При этом условный оператор имеет следующий вид:
If УСЛОВИЕ Then
БЛОК_ОПЕРАТОРОВ_1
Else
БЛОК_ОПЕРАТОРОВ_2
End If
БЛОК_ОПЕРАТОРОВ_1 выполняется в том случае, если УСЛОВИЕ истинно, в противном случае выполняется БЛОК_ОПЕРАТОРОВ_2.
Например, если значение переменной X принадлежит некоторому интервалу значений от а до b, то переменной Y будет присвоено значение 1, иначе переменной Y будет присвоено значение 0.
If (X>=a) and (X<=b) Then
Y=1
Else
Y=0
End If
3) В случае, когда ветвь ELSE является необязательной, условный оператор может быть записан в краткой форме:
If УСЛОВИЕ
БЛОК_ОПЕРАТОРОВ_1
End If
4) В условном операторе может проверяться несколько условий. В этом случае он будет записываться так:
If УСЛОВИЕ_1 Then
БЛОК_ОПЕРАТОРОВ_1
ElseIf УСЛОВИЕ_2 Then
БЛОК_ОПЕРАТОРОВ_2
ElseIf УСЛОВИЕ_3 Then
. . .
Else
БЛОК_ОПЕРАТОРОВ_ПО_УМОЛЧАНИЮ
End If
Если истинно УСЛОВИЕ_N, выполняется БЛОК_ОПЕРАТОРОВ_N, если же все условия ложны, выполняется последний БЛОК_ОПЕРАТОРОВ ПО УМОЛЧАНИЮ.
2.6 Оператор множественного выбора
Оператор Select Case можно использовать вместо последовательности операторов If. В языках программирования высокого уровня такая конструкция называется переключателем. Он записывается следующим образом:
Select Case ВЫРАЖЕНИЕ
Case УСЛОВИЕ_1
БЛОК_ОПЕРАТОРОВ_1
Case УСЛОВИЕ_2
БЛОК_ОПЕРАТОРОВ_2
Case УСЛОВИЕ_N
БЛОК_ОПEPATOPOB_N
Case Else
БЛОК_ОПЕРАТОРОВ_ПО_УМОЛЧАНИЮ
End Select
В свою очередь, УСЛОВИЕ может быть записано в одной из трех форм:
Case КОНСТАНТА, КОНСТАНТА, КОНСТАНТА,...
Case Is ЗНАК_ОТНОШЕНИЯ КОНСТАНТА
Case KOHCTAHTA_1 To KOHCTAHTA_2
Этот оператор выполняется так: сначала вычисляется значение ВЫРАЖЕНИЯ, стоящего после ключевых слов Select Case; затем выполняется проверка на то, удовлетворяет ли ВЫРАЖЕНИЕ одному из Case-УСЛОВИЙ.
Если Case-УСЛОВИЕ записано в первой форме, то достаточно, чтобы значение ВЫРАЖЕНИЯ было равно любой из КОНСТАНТ.
Если - во второй форме, то необходимо, чтобы выполнялось условие отношения между значением ВЫРАЖЕНИЯ и КОНСТАНТОЙ.
Если Саsе-УСЛОВИЕ записано в третьей форме, необходимо, чтобы выполнялось соотношение:
KOHCTAHTA_1 <= ВЫРАЖЕНИЕ <= КОНСТАНТА_2
Если такое условие найдено, выполняется БЛОК_ОПЕРАТОРОВ_N, который стоит после него, а затем управление передается оператору, который находится после End Select.
Если такого условия нет, то выполняется БЛОК_ОПЕРАТОРОВ ПО_УМОЛЧАНИЮ, который находится после ключевых слов Case Else.
Например, пусть в программе переменной I% присваивается некоторое значение и в зависимости от него выводится одна из трех строк:
Select Case I%
Case 1, 5
Debug. Print "Один или Пять"
Case Is > 3
Debug. Print "Больше Трех"
Case -5 То 5
Debug.Print "От минус Пяти до Пяти"
Case Else
Debug.Print "Ни одно из условий не выполнено"
End Select
В каждой инструкции CASE можно определить несколько значений или диапазонов значений КОНСТАНТЫ, например:
Case 16 То 19, 30 То 50, Is > 3
При этом соответствующий БЛОК_ОПЕРАТОРОВ будет выполнен в том случае, если хотя бы одно из условий верно.
Допускается использование вложенных операторов Select Case, при этом каждому из них должна соответствовать своя инструкция End Select.
Существует несколько важных моментов:
Если ни одно из условий не выполнено, а ветви Case Else нет, выполнение программы может привести к непредсказуемым последствиям.
Если значения ВЫРАЖЕНИЯ удовлетворяет сразу нескольким Case–условиям, будет выполнено то из них, которое стоит ближе к началу оператора Select Case.