19)Процедуры ,процедуры-функции. Общие процедуры .Процедуры обработки событий .Объявление переменных
[Область видимости] Sub Имя_Процедуры (Список_Параметров)
[раздел описаний (констант и переменных)]
тело процедуры (операторы)
End Sub
[Область видимости] – указывают Public, если процедура глобальная и доступна (видна) из других модулей, либо Private, если процедура локальная и доступна (видна) только внутри данного модуля и не может быть вызвана из других модулей. Sub – зарезервированное слово VBA объявляет начало процедуры, за ним задается имя_процедуры, в скобках указывается список параметров, передаваемых при вызове процедуры из программы (список параметров может отсутствовать). Список_Параметров – список переменных, передаваемых процедуре при вызове ее из другой процедуры: Имя_Параметра As Тип_Данных, As – зарезервированное слово VBA указывает, что за ним следует тип переменной. [раздел описаний (констант и переменных)] – раздел описания констант и переменных.
Определение: константа — это поименованная область памяти для хранения данных, значение которым присваивается при определении константы; значения остаются постоянными и не могут быть изменены во время выполнения программы.
Для определения констант служит зарезервированное слово Const.
Синтаксис описания констант:
Const Имя_Константы As Тип = значение
Например:
' Объявлена числовая константа для хранения
'значения числа Pi
Const Pi As Single = 3.1415926
где Const (Константа) — зарезервированное слово, которое сообщает VBA, что декларируется константа и резервируется область памяти для ее хранения; Имя_Константы — имя константы, не входящее в перечень зарезервированных слов VBA; As (Как) — зарезервированное слово, которое сообщает VBA, что определяется тип данных константы; Тип — Тип_константы определяет размер памяти занимаемой константой (прил. 2, п.1.6, табл. 4). При наборе программы в среда редактора VBA после набора зарезервированного слова As раскрывается список типов объектов и базовые Типы_Дынных. Выбранный в списке Тип_Данных устанавливается двойным щелчком мыши, нажатием клавиши <Таb> или нажатием клавиши <Enter>. Определение: переменная — это поименованная область памяти для хранения данных, которые могут изменяться в процессе выполнения программы.
Поскольку в VBA имеются определенные соглашения по отношению имени и типа переменной, то во избежание путаницы типов данных, переменные необходимо описывать или декларировать. Синтаксис описания переменных: Dim [Static] Имя_Переменной [ As Тип] где Dim (Определить) — зарезервированное слово, которое сообщает VBA, что декларируется переменная и резервируется область памяти для ее хранения. Имя_Переменной — имя переменной, не входящее в перечень ключевых слов VBA. As (Как) — зарезервированное слово, которое сообщает VBA, что определяется тип данных для переменной. Тип — Тип_переменной определяет размер памяти занимаемой переменной (прил. 2, п.1.6, табл. 4). Static (Статический) — зарезервированное слово VBA, позволяет сохранить значение переменной между вызовами процедуры, в которой она объявлена, инструкция Static используется только на уровне процедуры.
Тело процедуры (операторы) – алгоритм записанный на языке VBA.
End Sub – операторная скобка, указывающая на конец процедуры. Каждому оператору Sub обязательно соответствует End Sub.
Примечание: В разделе [раздел описаний (констант и переменных)] сначала описываются все константы, а затем все переменные. [раздел описаний (констант и переменных)] не является обязательным в процедурах.
Область видимости переменных и констант (три уровня):
1) До сих пор говорилось об описании констант и переменных внутри процедуры. Их также можно объявлять в верхней части модуля, которая называется областью общих объявлений. Область объявления переменных определяет область их видимости. Если переменная (константа) объявлена в процедуре, то процедура их видит и работает с ними, а другие процедуры не могут использовать эти переменные и их значения. Такие переменные называются локальными. В этом случае говорят, что переменная видна на уровне процедуры.
2) Для того чтобы значения определенных констант и переменных были доступны всем процедурам данного модуля, надо их объявить в области общих объявлений модуля (General Declarations), перед словом Dim поставить слово Private. Такие переменные и константы видимы на уровне модуля.
3) Для того чтобы переменные и константы модуля можно было использовать в любой процедуре любого модуля данного приложения, необходимо описать их как глобальные. Нужно помнить, что они находятся в оперативной памяти все время выполнения приложения и, следовательно, потребляют системные ресурсы. Глобальные переменные объявляются в области общих объявлений модуля, перед словом Dim ставится слово Public.
Аналогично описываются в области общих объявления модуля константы:
[Public|Private] Const Имя_Константы As Тип = значение
Но если в верхней части окна модуля есть оператор Option Explicit, то необходимо описать все переменные и константы.
Инструкция Option Explicit в секции General находится в модуле до всех процедур.При использовании инструкции Option Explicit необходимо явно описать все переменные с помощью инструкций Dim, Private, Public, ReDim или Static. При попытке использовать неописанное имя переменной возникает ошибка во время компиляции
Процедуры обработки событий (Процедура_Событие)
Событие (event) – это действие над объектом (например: нажатие командной кнопки, выполнение директивы меню, открытие или закрытие таблицы Excel и т.п.) Имя Процедуры_События состоит из имени объекта и действия (События), которые объединяются символом подчеркивания “_”.
Синтаксис Процедуры_События:
Private Sub ИмяОбъекта_Событие ( )
тело процедуры (операторы)
End Sub
Общее между общей процедурой и Процедурой_События зарезервированное слово Sub. Принципиальное отличие общей процедуры от Процедуры_События заключается в том, что для общей процедуры имя подбирает пользователь,адляПроцедуры_События имя создаётся средойVBA
- 3)Система счисления. Представление чисел в различных системах. Перевод целых чисел из одной в другую.
- 4)Высказывания и предикаты. Алгебра, высказывание, предикат, булевское, высказывание, логические функции.
- 5)Аксиомы алгебры предикат.
- 6)Информационно-логическая задача(опр)
- 7)Кол-венное измерение инфы. Кол-во инфы. Мера инфы. Мера р. Хартли. Мера к. Шенона
- 8)Объект и предмет информатики
- 9)Структура современной информатики
- 10)Структура программного обеспечения
- 11)Системы програмирования
- 12)Операционные системы
- 13)Понятие алгоритма. Св-ва. Типы. Виды представления алгоритмов. Этапы разработки программы
- 14) Объектно-ориентированное программирование на примере vba.
- 15)Основные понятия объектно-ориентированное программирование
- 16)Объекты. Методы. Свойства. События
- 17)Основы программирования на языке vba
- 2.3. Выражения
- 2.3.1. Виды операций
- 2.3.2. Приоритет выполнения операций
- 18)Алфавит. Комментарии. Имена переменных. Операция присвоения. Математические операции. Операции присвоения. Логические операции.
- 19)Процедуры ,процедуры-функции. Общие процедуры .Процедуры обработки событий .Объявление переменных
- 20) Встроенные функции (математические)
- 21)Условный оператор if…then
- 22)Операторы передачи безусловного перехода по метке goto
- 21)Условный оператор if…then
- 23)Операторы цикла
- 24)Создание процедуры(функции) вызов процедуры
- 25)Работа со строковыми переменными
- 26)Ввод-вывод в vba : inputbox, msgbox,объекты range, cells
- 27)Некоторые приемы оптимизации программ
- 28)Опред одномерного и двумерного массива. Декларация одномерного и двумерного масива в vba
- 29)Алгоритмы ввода вывода одномерного массива. Алгоритм ввода и вывода двумерного массива
- 30)Основные сведения о динамичном массиве.
- 31)Сортировка массива методом пузырька массива
- 32)Сортировка масива методом нахождения минимального элемента массива
- 33)Экранная форма
- 34)Экранная форма( св-ва, методы, события)
- 36)Эл. Кнопка(св-ва, события)
- 37)Элемент Текстовое поле (свойства)
- 38)Эл надпись(св-ва)
- 39)Элемент рамка
- 40)Элемент флажок
- 41)Эл переключатель(св-ва)
- 42)Элемент рисунок
- 43) Размещение элементов управления в форме или на рабочем листе
- 43)Размещение эл упр в форме или на раб листе
- 48)Задачи на измерение единицы измерения информации
- 49)Задачи бутлеровской алгебры и размеры пениса мух
- 52,3) Построение графиков 2 порядка на плоскости гиперболоид (однополосный, двухполюсный)
- 52,4) Построение графиков 2 порядка на плоскости конус 2 порядка
- 59) Транспонирование матрицы