- •Вопросы для подготовки к экзамену по программированию в среде vba
- •Дать определения терминам: алгоритм, программа.
- •Дать определения терминам: язык программирования, компилятор.
- •Описать свойства и виды алгоритмов. Свойства алгоритма:
- •Классификация алгоритмов:
- •Способы записи алгоритма. Виды алгоритмов. Способы записи алгоритма:
- •Классификация алгоритмов:
- •Линейный – все действия выполняются последовательно друг за другом.
- •Описать этапы создания программы. Дать определения: Объект, Метод, Этапы создания программы:
- •Описать этапы создания программы. Дать определения: Событие, Свойство. Этапы создания программы:
- •Способы запуска редактора vba. Форма, модуль, окно макета формы, Toolbox, конструктор форм.
- •Элементы управления.
- •Надпись Label –
- •Текстовое поле - TextBox
- •Рамка - Frame –
- •Кнопка Command Button.
- •Флажок - Check Box
- •Переключатель - Option Button
- •Поле со списком ComboBox
- •Список ListBox
- •Рамка для рисунка PictureBox
- •Понятие процедур, функций, операторов, переменных. Типы переменных.
- •Процедуры бывают:
- •Структура процедуры
- •Способы описания переменных. Принципы и правила выбора имен для переменных
- •В vba предусмотрены следующие типы переменных:
- •Создание переменных. Область действия или видимости (scope - скауп) переменных
- •Константы. Создание именованных констант. Область действия и написание констант
- •Константы бывают литеральными и именованными.
- •Операции и знаки операций; арифметические, конкатенация, сравнения, логические.
- •Преобразование типов данных.
- •Это можно сделать с помощью функций:
- •Массивы. Статические и динамические массивы. Объявление и использование массивов.
- •Классы объектов. Наследование. Полиморфизм. Инкапсуляция. Классы объектов
- •Наследование
- •Полиморфизм
- •Инкапсуляция
- •Операторы условного перехода: If…Then, If…ElseIf,
- •Операторы условного перехода: Select Case
- •Операторы циклов: For…Next, For Each…Next, Do…Loop.
- •Управление потоком с помощью оператора Go To. Немедленный выход из цикла с помощью оператора Exit For.
- •Математические функции: Abs, Cint, Fix, Int, Cos, Sin, Sqr
- •Строковые функции: Len, Mid, Left, Right
- •Функции работы с датой и временем: Date(), Time()
- •Функции преобразования типов данных: Val, Str,
- •Комментарии.
- •Объектная модель. Объектное выражение. Объектная модель
- •Встроенные функции Excel. Объект Application св-ва, методы и события:
Операторы циклов: For…Next, For Each…Next, Do…Loop.
For…Next цикл, который выполняется заданное количество раз
Пример вложенных циклов For…Next
For i=1 to10
For j=1 to10
A(I,J)=Rnd()
Next j
Next i
For Each...Next отличается от For…Next тем, что в ней не нужно указывать количество повторений. Для каждого элемента в группе, с помощью переменной “элемент” определяется тип объекта в семействе, а с помощью аргумента “группа” задается семейство, с которым нужно работать.
Пример:
For Each элемент In группа
Операторы, выполняемые при каждом проходе цикла
Next элемент
Do…Loop предназначены для повторения заданного блока, пока не будет выполнено некоторое условие.
3.1)Do While условие Loop цикл выполняется в том случае и до тех пор, пока заданное условие имеет значение True., если условие False цикл не выполняется.
Пример:
Do While ВводимыеИмена <>”Готово”
ВводимыеИмена=InputBox(“Введите Ваше имя или слово “готово” для выхода”)
If ВводимыеИмена <>”Готово” Then
Print ВводимыеИмена
Loop
3.2) Do…Loop While условие оператор начинает процедуру и выполняет блок кода один раз, так как условие проверяется после выполнения цикла, а затем повторяет выполнение цикла пока заданное условие имеет значение True.
Пример:
Do
ВводимыеИмена <>”Готово”
ВводимыеИмена=InputBox(“Введите Ваше имя или слово “готово” для выхода”)
If ВводимыеИмена <>”Готово” Then
Print ВводимыеИмена
Loop While
3.3)Do… Loop Until условие эта конструкция выполняет блок программного кода один раз, а затем повторяет выполнение, пока заданное условие имеет значение False.
Пример:
Do
ВводимыеИмена=InputBox(“Введите ваше имя или ”готово” для выхода”)
If ВводимыеИмена <> “Готово” Then
Print Вводимые имена
Loop Until Вводимые имена= “Готово”
3.4)Do Until условие
…
Loop (начинает и повторяет выполнение блока, только если заданное условие принимает значение False)
Управление потоком с помощью оператора Go To. Немедленный выход из цикла с помощью оператора Exit For.
Оператор GoTo — это оператор безусловного перехода, когда ход выполнения программы без проверки каких-либо условий перепрыгивает на метку в коде.
Пример использования GoTo может выглядеть так:
GoTo EngineNotStarted
...
EngineNotStarted:
MsgBox "Едем на метро"
...
Здесь EngineNotStarted: — это метка, для нее используется имя (выбираемое по правилам назначения имен для переменных), которое оканчивается двоеточием. Эта метка может находиться как до, так и после оператора GoTo. В любом случае, при выполнении оператора GoTo ход выполнения "перепрыгнет" на указанную в GoTo метку. Иногда использование GoTo очень удобно, например, когда нам нужно добиваться от пользователя ввода правильного значения неизвестное число раз.
Однако использовать GoTo категорически не рекомендуется, потому что код становится трудночитаемым. Чаще всего GoTo можно заменить на конструкцию Do While...Loop или на вызов функции из самой себя.
Немедленный выход из цикла с помощью оператора Exit For. Используется при появлении недопустимого значения в выражениях For Next, If Then, Select Case.
Математические функции: Abs, Cint, Fix, Int, Cos, Sin, Sqr
Abs(число) – абсолютное значение числа (модуль)
Atn(число) – arctg числа (в радианах)
Cos(число) – cos угла (в радианах)
Exp(число) – експанента (в скобках степень)
Fix(число) – возвращает целую часть числа
Sin(число) – sin угла (в радианах)
Int(число) – возвращает целую часть числа (с округлением)
Log(число) – натуральный логарифм
Rnd(число) – случайное число с плавающей точкой
Sgn(число) – возвращает знак величины
Sqr(число) – квадратный корень
Tan(число) – tg угла (в радианах)
