Сделай Сам Свою Работу на 5

Операторы, выражения и операции в VBA.





 

Оператор Синтаксис Описание
AND A AND B Конъюнкция:Если А и В имеют значение True, то - True. Иначе - False
OR A OR B Дизъюнкция:Если любой из операндов имеет значение True, то - True. Иначе - False
NOT NOT A Отрицание:Если А имеет значение False, то - True. Иначе - False
XOR A XOR B Исключение:Если А имеет значение True или В имеет значение True, то - True. Иначе - False
EQV A EQV B Эквивалентность:Если А имеет такое же значение что и В, то - True. Иначе - False
IMP A IMP B Импликация:Если А имеет значение True и В имеет значение False, то - False. Иначе - True

 

 


Визуальная среда VBA. Создание стандартных модулей, модулей объектов, классов модулей.

Cистема программирования VBA предназначена для написания кода программ модулей, которые хранят текст этих программ. Модуль - это совокупность описаний, инструкций и процедур, сохраненная под общим именем. В Access существует два типа модулей: стандартные модули и модули класса. Основное содержание модулей — этопроцедуры на языке VBA. Процедура - совокупность описаний и инструкций в модуле, которые выполняются как одна программная единица. В VBA существуют процедуры-подпрограммы Sub и процедуры- функции Function.



Стандартные модули содержат общие процедуры, которые не связаны с конкретным объектом (формой, отчетом). Стандартный модуль - это модуль, в который помещают процедуры Sub и Function, которые должны быть доступны для всех процедур в данном приложении. Стандартные модули могут использоваться другими приложениями Access, так как в общих процедурах нет ссылок на конкретные объекты данного приложения (формы, отчеты). Кроме общих процедур, в стандартных модулях могут содержаться глобальные переменные и функции, а также объекты, которые доступные из других объектов базы данных.

Модуль класса отличается от стандартного модуля тем, что, кроме процедур, он содержит описание объекта и используется для создания классов (объектов). Отдельные модули класса, расположенные на вкладке Модули окна базы данных, содержат описание класса (объекта), созданного пользователем. К модулям класса также относятся модули форм (отчетов), которые связаны с конкретными формами (отчетами) и содержат процедуры обработки событий форм (отчетов) и их элементов управления.



Модуль формы (отчета) - это модуль класса, содержащий программы всех процедур обработки событий, возникающих в конкретной форме (отчете) или в ее элементах управления. Все процедуры событий для формы (отчета) хранятся в модуле формы (отчета). Вновь созданная форма (отчет) не содержит модулей, но их можно создать несколькими способами. Первый способ создания пустого модуля: выбрать "Да" в поле наличия модуля на вкладке "Все" в окне диалога Форма или Отчет. Окно диалога вызывается командой "Свойства" из контекстного меню, находясь в конструкторе форм или отчетов. Чтобы создать отдельный модуль класса или стандартный модуль, надо выбрать пункт Модуль класса или Модуль в меню Вставка. Стандартный модуль можно создать, например, путем преобразования макроса. Модули отображаются в окне базы данных на вкладке Модули. На рисунке представлено окно базы данных Access (на вкладке Модули) в нем находятся модули объектов, три стандартных модуля и один модуль класса.

 

Разработка и использование общих процедур в VBA.

Процедуры VBA бывают двух типов

  • процедуры обработки событий;
  • общие процедуры.

Имя процедуры обработки события, связанного с элементом управления, состоит из имени элемента управления, символа подчеркивания и имени события, например Закрыть_ click – процедура обработки нажатия кнопки Закрыть в форме.

Общие процедуры VBA могут храниться в любом типе модулей VBA, так как они не связаны с конкретным объектом. Они выполняются только тогда, когда явно вызываются другими процедурами. Обычно эти процедуры реализуют какие-то общие действия, которые могут вызываться разными процедурами обработки событий.



Процедуры, как и переменные, должны быть объявлены до того, как они могут быть вызваны. Объявления общих процедур помещаются в разделе General (Общая область) модуля. Процедуры обработки событий хранятся в разделах модуля формы или отчета, соответствующих связанным с этими процедурами объектам.

В свою очередь, процедуры VBA делятся на подпрограммы и функции. Они являются фрагментами программного кода, который заключается между операторами Sub и End Sub или между Function и End Function соответственно. Процедуры-подпрограммы выполняют действия, но не возвращают значение, поэтому они не могут быть использованы в выражениях. Процедуры обработки событий представляют собой процедуры-подпрограммы. Процедуры-функции всегда возвращают значение, поэтому они обычно используются в выражениях. Общие процедуры могут быть как процедурами-подпрограммами, так и процедурами-функциями.

Синтаксис процедуры-подпрограммы VBA

Sub <имяПроцедуры> (<аргумент1>, <аргумент2>, …) <оператор1>

<оператор2>

End Sub

Список аргументов у процедуры может отсутствовать и может содержать необязательные аргументы.

Объявление каждого аргумента имеет следующий синтаксис

<имяАргумента> [As <типДанных> [=<значениеПоУмолчанию>]],

где <имяАргумента> – идентификатор, составленный согласно правилам создания имен и представляющий аргумент в теле процедуры;

<типДанных> – это либо встроенный тип данных, либо тип, определенный пользователем. Тип данных аргумента может не указываться, и тогда считается, что он имеет тип Variant. Аргументом процедуры может быть и массив. Тогда после имени аргумента должны стоять круглые скобки.

Для необязательного аргумента может быть указано <значение по умолчанию>, которое будет использоваться, если этот аргумент будет опущен. Если значение по умолчанию не указано, необязательный аргумент инициируется точно так же, как переменная, то есть числовой аргумент – в 0, строковый – в строку нулевой длины и так далее

 

Функции и их использование. Создание функций пользователя в среде VBA.

Встроенные функции в VBA.

Встроенные функции VBA обеспечивают сложные виды обработки данных, избавляя пользователя от разработки собственных программ. Функции имеют аргументы, в качестве которых используются переменные, константы, выражения. Как правило, встроенные функции VBA возвращают отдельные значения(не массивы).

Некоторые встроенные функции имеют два варианта реализации, в одном случае возвращается значение типа Variant,а в другом случае-String.

Категории встроенных функций:

-Математические(ABS-абсолютное значение числа,RND-случайное число,INT-выделение целой части числа)

-Строковые(LCASE-преобразование в строчные буквы строки символов, UCASE-преобразование в прописные буквы символов, LEFT-выделение подстроки слева, RIGHT-выделение подстроки справа, LEN-определение длины строки)

-Даты и времени(Date-возврат текущей системной даты, CDATE-конвертирование выражения в формат дата, время TIME-возврат текущего системного времени NOW-возврат текущей даты, времени DAY- возврат номера дня года MONTH-возврат номера месяца года WEEKDAY-возврат номера дня недели YEAR-возврат номера года)

-Преобразование типа данных(CINT-преобразование действительного числа в целое CSTR- преобразование числа в строку символов CVAR-преобразование в тип данных VARIANT FORMAT-форматирование типа данных дата, время, число, строка символов для печати или записи в файл STRCOMP –сравнение двух строк VAL- преобразование сироки символов в число)

Функции пользователя

На языке VBA можно создавать функции пользователя, которые в отличие от процедуры, возвращают вычисленное значение.

Заголовок функции пользователя имеет вид

Function<Имя процедуры>(аргументы) As<type>

………………………..

Тело процедуры(операторы)

………………………..

End Function

 

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.