Light-electric.com

IT Журнал
17 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Справочник vba access

Справочник по Visual Basic for Applications (VBA)

Содержание:

Предисловие

Настоящая книга является с одной стороны, подробным справочником по Visual Basic for Applications (VBA), а с другой стороны, самоучителем по составлению и разработке приложений, написанных на этом языке. Это уникальное сочетание, которое, следуя рекламному подходу, можно назвать «два в одном», обеспечивает большую гибкость при решении читателем своих собственных задач. Самоучитель на большом количестве примеров умело и доступно обучает, как можно быстро и эффективно решать разнообразные задачи. В справочнике приводится подробное описание возможностей VBA, имея такие сведения под рукой у читателя исчезнет необходимость бегать по магазинам в поиске дополнительной литературы при написании самостоятельных приложений, что несомненно сбережет время и кошелек.

Самоучитель состоит из уроков. В каждом из уроков разрабатывается пример пользовательского приложения и дается подробный анализ. Тексты всех программ снабжены доскональными комментариями. Можно сказать, что все рассматриваемые программы разложены буквально по маленьким разжеванным кусочкам, которые читателю только и остается проглотить. По завершению урока предлагается самостоятельное задание, выполнение которого поможет лучше закрепить разобранный материал.

С помощью VBA можно легко и быстро создавать пользовательские приложения, используя единую для всех офисных программ среду и язык. Научившись разрабатывать приложения для одной офисной программы, например Excel (которой, как наиболее популярной офисной программе, в основном и посвящена данная книга), можно создавать приложения и для других офисных программ, например Access. Внимательно читая эту книгу, можно стать искусным разработчиком и научиться пользоваться мощными средствами разработки приложений Excel для того, чтобы конструировать эффективные и применимые к реальной жизни приложения. Кроме того, по своей структуре, интерфейсу и синтаксису VBA образует ядро Visual Basic. Поэтому тот, кто изучит программирование на VBA очень быстро может освоить и Visual Basic.

В данной книге уделяется огромное внимание программированию на языке VBA, но это совсем не требует от читателя быть профессиональным программистом. VBA обладает мощными встроенными интеллектуальными средствами, которые позволяют даже начинающему пользователю быстро самостоятельно разрабатывать профессиональные приложения. Например, при написании кода программы редактор VBA сам предлагает пользователю возможные продолжения составляемых им инструкций. Другим примером встроенных интеллектуальных средств VBA является макрорекордер, который переводит все выполняемые вручную пользователем действия в основном приложении на язык VBA. Таким образом, макрорекордер позволяет пользователю поручать VBA самому создавать большие куски кода разрабатываемого приложения.

Краткий обзор материала книги

Книга состоит из двух частей, первая из которых имеет 15 глав со следующим кратким содержанием:
Во введении на простейших примерах объясняется, зачем нужен VBA.
Глава 1 отвечает на вопрос: «Что такое VBA?». В ней также дано описание основных структурных элементов VBA.
В главе 2 рассматриваются основные элементы объектной иерархической структуры VBA.
В главах 3 и 4 дан обзор методов VBA, программирующих команды для работы с рабочим листом, которые позволяют строить прогрессии, создавать фильтры и консолидировать данные, организовывать сценарии и структуры, решать уравнения, подводить промежуточные итоги и сортировать данные.
Глава 5 описывает, как строятся диаграммы в VBA.
В главе 6 обсуждается, как программировать одно из наиболее мощных средств по анализу данных — сводные таблицы.
В глава 7 приведен обзор элементов управления VBA и описание того, как в VBA создаются и программируются диалоговые окна.
Глава 8 продолжает начатый в предыдущей главе разговор по созданию пользовательского интерфейса. В ней объясняется, как создать пользовательское меню и панели инструментов.
Глава 9 посвящена вопросу создания очень полезного и наглядного средства Microsoft Office — помощника.
В главе 10 дано обзорное описание процесса создания графических объектов.
В главе И приводится краткая информация по основным понятиям языка VBA: какими типами данных оперирует VBA, что такое переменная, константа, массив и динамический массив, как создается пользовательский тип переменной. В ней перечислены операции, встроенные функции, операторы и процедуры VBA, а также типы процедур.
В главе 12 обсуждаются принципы создания процедур обработки ошибок, а также встроенные в редактор VBA мощные средства по отладке программ.
В главе 13 описаны типы файлов и способы работы с ними в VBA.
Глава 14 объясняет, как в VBA можно создавать пользовательские объекты.
В главе 15 дан обзор методов по работе с внешними базами данных, использовании Microsoft Query, открытой связи с базой данных (ODBC) и объектов доступа к данным (DAO).

Во второй части приведено 14 уроков самоучителя по созданию пользовательских приложений:
В уроке 1 на примере создания приложение по игре в орел и решку показывается: как в редакторе VBA создается программа и как она запускается на выполнение; создание пользовательского диалогового окна; программный контроль за вводом в поле чисел, а не строковой информации; программное управление запретом ввода данных в поле; работа с функцией генератора случайных чисел; вывод числовой информации в поле.
В уроке 2 на примере разработки приложения по расчету маргинальной процентной ставки объясняется: как программно решаются уравнения; программный ввод формулы в ячейку рабочего листа; финансовые функции; проверка корректности ввода данных из диалогового окна; назначение клавишам и функций кнопок диалогового окна; создание всплывающих подсказок у элементов управления; использование MacroRecorder для упрощения и убыстрения написания кода; программное форматирование ячеек рабочего листа.
В уроке 3 на рассмотренном примере работы со списком показывается: как заполняется список; управление выбором нескольких элементов из списка; как выполнить специфицированную операцию над выбранными элементами из списка с помощью переключателей.
В уроке 4 на примере разработки приложения по расчету амортизации объясняются: финансовые функции расчета амортизации; управление видимостью отдельных элементов управления в окне диалога; программный вывод объектов WordArt на рабочий лист.
В уроке 5 на рассмотренном примере показывается: ввод формул при помощи элемента управления RefEdit; нахождение корня уравнения зависящего от параметра; установка параметров метода GoalSeek; создание прогрессий на рабочем листе; программирование протаскивания маркера заполнения выделенного диапазона на рабочем листе; построение диаграмм.
В уроке 6 на обсужденных примерах показывается: программное управление размерами диалогового окна и элементов управления; задание последовательности элементов управления в виде массива объектов; определение текущего объема вклада; задание параметров счетчика; как можно программно или при помощи drag-and-drop операции перемещать элементы управления по поверхности диалогового окна.
В уроке 7 на примере конструируемого приложения демонстрируется: как при помощи диалогового окна можно заполнить базу данных на рабочем листе; программирование примечаний и текстовых полей на рабочем листе; использование переключателя и флажков; создание пользовательского заголовка окна приложения и программное закрепление области.
В уроке 8 на примере разработки приложения по построению поверхности объясняется: как табулируются функции, зависящие от двух аргументов; преобразование формулы с аргументами х и у в формулу рабочего листа; программное построение поверхности; запись диаграммы в графический файл; считывание графического файла в элемент управления image; программное управление углом зрения, под которым смотрят на поверхность, и углом поворота поверхности вокруг оси Z.
В уроке 9 на примере конструируемого приложения по расчету периодических выплат показывается: как используется финансовая функция пплдт (РМТ); вывод результатов табулирования функции в элемент управления ListBox (список); построение диаграммы, тип которой выбирается в группе переключателей; программная проверка наличия файла на диске.
В уроке 10 на примере разработки приложения по работе с базой данных демонстрируется: конструирование пользовательского интерфейса; создание приложения, работающего с несколькими диалоговыми окнами; поиск информации в базе данных; редактирование записей в базе данных; удаление ненужных записей из базы данных; архивация данных; программирование фильтрации и сортировки данных; создание сводных таблиц; добавление пользователем новых элементов в список с полем во время выполнения программы.
В уроке И на примере игры в крестики и нолики объясняется: удаление рисунка из элемента управления; учет количества щелчков по элементу управления; управление видимостью границы элемента управления; создание игрового поля.
В уроке 12 на примере приложения по построению линии тренда показывается: конструирование многостраничных диалоговых окон и линии тренда; применение метода offset для вывода данных на рабочем листе; считывание данных из каждой отдельной ячейки диапазона.
В уроке 13 на примере приложения по составлению расписания обсуждается: передача информации между элементами управления при обработке события click; управление видимостью рисунков и цветом элементов управления.
В уроке 14 на примере показана работа с текстовыми файлами: считывание и запись в файл последовательного доступа; считывание и запись записей в файла прямого доступа; создание и работа с пользовательскими типами данных; создание простейшего текстового редактора и заставки приложения.

Читать еще:  Create table sql access

Программирование на VBA Access 2003 – Встроенные функции

Пришло время поговорить и о программировании на VBA Access, так как мы с Вами рассматривали уже достаточно много примеров реализации тех или иных задач в Access 2003, но мы не затрагивали основы VBA, и сегодня мы начнем со встроенных функций. Рассмотрим часто используемые функции и конечно разберем примеры их использования, для лучшего освоения языка программирования VBA для Access.

Если говорить о том, что именно мы уже рассматривали в Access 2003 то, например это Загрузка данных из текстового файла на VBA Access или Выгрузка данных из Access в шаблон Word и Excel. А сегодня мы будем рассматривать именно основы VBA и как уже сказалось выше встроенные функции.

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

Если Вы уже немного знакомы с какими-нибудь языками программирования, например, Вы, знаете основы JavaScript или основы Visual Basic, то Вы должны понимать что такое встроенные функции, а если нет то я могу привести свое определение данного термина.

Встроенные функции – это функции, которые уже встроены в среду программирования. Они уже написаны до Вас и созданы именно для того, чтобы облегчить Вам написание той или иной программы, другими словами в них заложены все часто используемые операции над теми или иными данными. Они условно подразделяются на несколько типов, например: математические, строковые, функции преобразования и другие. В разных языках их количество отличается и также отличается синтаксис, но иногда как название, так и синтаксис совпадает даже в разных языках программирования, так как я уже сказал, что эти функции выполняют за Вас определенную узкую задачу, например, преобразование одного типа данных в другой, а как Вы понимаете такие задачи встречаются во всех языках программирования.

И так хватит теории, давайте приступим к рассмотрению встроенных функций VBA Access.

Для начала создадим форму, добавим на нее элемент управления «Кнопка» затем откроем, обработчик события «Нажатие кнопки», где мы и будем программировать на VBA, а конкретней пробовать использование встроенных функции.

Функция msgbox – простая функция для отображения сообщения на экране в виде диалогового окна.

И теперь сохраните, откройте форму и нажмите на нашу кнопку и у Вас отобразится это сообщение:

У данной функции один обязательный параметр и несколько необязательных. Как Вы понимаете обязательный параметр это строковое выражение для вывода сообщения, с помощью необязательных параметров вы можете задавать вид отображения этого диалогового окна, заголовок или указать файл справки. Пример чуть посложней:

Примечание! Далее я буду писать все примеры без указания начала процедуры и ее конца т.е. без Private Sub Кнопка1_Click() и End Sub, подразумевается что все примеры мы будем писать в обработчике одной кнопки, Вы просто вставляйте код ниже между этим строками.

Примечание! Более подробно об описании и значениях констант можете прочитать во встроенной автономной справке Access 2003. Тоже относится и к остальным встроенным функциям и любым другим возникающим вопросам, так как в этой справке есть все, всем советую ей пользоваться.

Функция Mid – данная функция относится к строковым функциям Access и она вырезает указанное число знаков строки. Имеет три параметра, первый это собственно сама строка, второй это начальная позиция, и третий это число символов.

Здесь мы просто указали строку, из которой необходимо вырезать, и с какого символа нужно начинать, третий параметр мы не указывали (поэтому вырезалось все, начиная с 7 символа), а если захотели, то код был бы таким (абсолютно равнозначный):

Функция Len – также относится к строковым функциям и она просто считает количество символов в строке. Давайте объединим предыдущий пример с функцией len, так как порой неизвестно (да и не удобно) сколько символов необходимо вырезать.

И результат будет таким же, как и предыдущем примере.

Функция LCase – строковая функция vba которая преобразует все буквы строки в строчные. Для закрепления давайте рассмотрим все на том же примере, только сейчас обрамим наше выражение еще и функцией LCase.

И результат будет таким же, как и раньше, но все заглавные буквы станут строчными, в нашем случае это первая буква «Н», результат:

Функции left и right – это строковые функции vba, которые вырезают указанное количеств символов слева и справа соответственно. Принцип такой же, как и, например, в Excel функциях левсимв и правсимв.

Функция right работает аналогично, только вырезает символы справа.

Функции date, time, now – это функции, с помощью которых можно получить текущую дату и время. По названию я думаю понятно, какая функция для чего нужна, если нет то date текущая дата, time текущее время, now текущая дата и время. Данные функции запускаются без параметров.

Здесь мы просто через конкатенацию вывели результаты выполнения сразу всех функций.

Функции hour, minute, second – эти функции возвращают соответственно часы, минуты и секунды. Принимают один параметр это текущее время.

Функция isnull – проверяет значение на NULL.

Программно задать значение NULL, для того чтобы данная функция вернула TRUE нельзя, поэтому применяйте эту функцию к переменным или полям, которые формируются на основе данных формы или источника данных.

Функция Nz — данная функция возвращает значение не NULL. Принимает один обязательный параметр с типом variant и один не обязательный. Она работает следующим образом, если входящий параметр NULL она преобразует его в другое значение, для предотвращения использования NULL значений в выражении. Также если указан второй параметр, то в случае если первый параметр NULL то она вернет его, т.е. второй параметр.

Пример предотвращения NULL значения в выражении:

Т.е. если бы мы не использовали данную функцию, то тогда у нас была ошибка, так как сложить число со значением NULL нельзя, но мы это предвидели и предотвратили.

Пример возвращения значения, если входящий параметр равен NULL:

Здесь просто мы смотрим если первый параметр NULL, то возвращаем второй в виде строки.

Читать еще:  Access inner join

Приведу несколько функций для работы с числами.

Функции Int, Fix, Abs – функции которые работают с числами, все они принимают один параметр и делают следующее:

  • Int – принимает значение типа Double и возвращает число меньшее или равное исходному числу, в случае если число отрицательное;
  • Fix — принимает значение типа Double и возвращает число большее или равное исходному числу, в случае если число отрицательное;
  • Abs – возвращает абсолютное значение числа переданное во входящем параметре.

Примечание! Для перевода на новую строку мы использовали константу vbNewLine.

Пока это все, надеюсь, данные простые примеры помогут Вам освоить и понять что такое встроенные функции, а мы с Вами продолжим изучать VBA Access в следующих статьях. Удачи!

VBA-Урок 1. Что такое VBA. Основные понятия.

В данном разделе мы рассмотрим что такое VBA, посколько именно на нем и пишутся макросы.

Что такое VBA?

VBA — язык (расшифровывается как Visual Basic for Application) был разработан компанией Microsoft. Данный язык не является самостоятельным, а предназначен для автоматизации процессов в пакете MS Office. VBA широко используется в Excel, а также в Access, Word и других программах пакета.

VBA — простой язык программирования, которому может научиться любой желающий. Изучив его, вы сможет предоставлять команды Excel, что делать с колонками, строками, значениями в ячейках, перемещать/добавлять/сортировать листы, выводить заранее запрограммированные сообщения, писать свои формулы и функции и т.д. Суть языка заключается в оперировании объектами (что относит его к объектно-ориентированному программированию).

Чтобы работать с VBA кодом, нам нужен редактор, который уже установлен по умолчанию. Вы можете открыть его, нажав комбинацию клавиш » ALT + F11 «.

Объекты (Objects)

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

Главный объект это Application, что соответствует самой программе Excel. Далее следует Workbooks (книга), Worksheets (лист), Range (диапазон, или отдельная ячейка). Например, чтобы обратиться к ячейке «A1» на листе нам нужно будет прописать следующий путь с учетом иерархии:

Application.Workbooks(«Архив»).Worksheets(«Аркуш1»).Range(«A1»).

Таким образом, мы научились обращаться до наименьшего объекта в Excel — ячейки.

Коллекции (Collections)

В свою очередь объекты имеют «коллекции». Коллекция — это группа объектов одинакового класса. Отдельные элеметы коллекции являются также объектами. Так, объекты Worksheets являются элементами коллекции объекта Worksheet, который содержит также и другие коллекции и объекты:

  • ChartObjects (элемент коллекции объекта ChartObject)
  • Range
  • PageSetup
  • PivotTables (элемент коллекции объекта PivotTable).

Свойства (Properties)

Каждый объект имеет свойства . Например, объект Range имеет свойство Value или Formula.

Worksheets(“Sheet1”).Range(“A1”).Value або Worksheets(“Sheet1”).Range(“A1”).Formula

В данном примере, свойство отображает значение, которое введено в ячейку или введенную формулу.

Также, через свойство Formula можно не только получить формулу, но и записать ее:

MsgBox Range(“A1”).Formula — получим сообщение с формулой в ячейке «А1«;

Range(“B12”).Formula = “=2+6*100” — вписываем формулу =2+6*100 в ячейку B12.

Методи (Methods)

Теперь давайте рассмотрим, каким образом мы можем управлять содержимым диапазона или ячейки. Для этого в VBA существуют, так-называемые методы (команды «что сделать»). При написании кода методы отделяются от объекта точкой, например:

Range(«A1»).Select или Cells(1, 1).Select

Данный метод указывает выбрать (Select) ячейку «A1».
Далее, давайте, удалим значение в данной ячейке. Для этого напишем следующий код:

Selection.ClearContents

Здесь программа «берет» то, что мы выделили (Selection) и удаляет его содержимое (ClearContents ).

2.4 Работа со справкой

Разделы справки VBA, приемы нахождения нужной информации

Работа со справкой по программированию в Office не так очевидна, как может показаться на первый взгляд.

Вызов окна справки производится из редактора Visual Basic по нажатию на кнопку . Второй вариант — воспользоваться кнопкой Справка на панели инструментов Standard. В результате откроется окно, аналогичное представленному на рис. 2.2.

Рис. 2.2 Справка VBA в Excel

Еще одна возможность вызвать справку — установить указатель мыши в нужное место в окне редактора кода (например, на имя вызываемого метода или используемого свойства) и нажать на кнопку . Преимуществом такого подхода является то, что при наличии нескольких вариантов (например, объект Range и свойство Range) вам автоматически открывается нужный.

Справка по программированию в приложении Microsoft Office обычно состоит из трех частей:

  • первая часть (Microsoft Excel Visual Basic Reference, Microsoft Word Visual Basic Reference и т.п.) — это справка по объектной модели самого приложения Office;
  • вторая часть (Microsoft Visual Basic Documentation, она одинакова во всех приложениях Office) — это справка по синтаксису и встроенным функциям самого языка Visual Basic for Application;
  • третья часть (Microsoft Office Visual Basic Reference, она также одинакова во всех приложениях Office) — это справка по общим возможностям приложений Office: программная работа с панелями инструментов и меню, работа с помощником, организация взаимодействия с Windows SharePoint Services и т.п.

В некоторых приложениях (например, Microsoft Access) в справку добавлены дополнительные части (см. рис. 2.3) — по объектной модели ADO, по языку SQL и т.п.

Рис. 2.3 Справка VBA в Access

Обычно самая важная часть — это часть, которая посвящена возможностям конкретного приложения Office. Ее условно можно разделить на две главные части (см. рис. 2.4):

  • Programming Concepts (концепции программирования) — в ней рассказывается, как программным образом выполнять самые распространенные операции. Например, для Excel это возможность создать или открыть рабочую книгу, найти нужный лист, получить или записать информацию в ячейку и т.п.
  • справка по компонентам объектной модели приложения Office: коллекциям, объектам, свойствам и методам и т.п. При этом самые важные моменты, которые относятся скорее к области концепций (какими способами, например, можно создать объект Range в Excel) приводятся в справке по соответствующему объекту. Представление о всех функциональных возможностях данного объекта можно получить, только просмотрев подряд все его свойства и методы.

Рис. 2.4 Справка по компонентам объектной модели Excel

Найти направление, то есть объект и его свойства и методы, которые можно использовать в нашей ситуации, можно тремя способами:

  • просмотреть раздел Programming Concepts (концепции программирования) в справке — не описана ли там наша ситуация;
  • просто просматривать все подряд объекты, свойства и методы в справке, пытаясь догадаться, что нам может помочь. Это самый неэффективный способ, поскольку объектов в любом приложении Office сотни (часто используемых — намного меньше, и они рассмотрены в этой книге). Однако если вам предстоит в течение долгого времени заниматься программированием в каком-либо приложении Office, есть смысл потратить несколько дней, чтобы подряд читать справку по всем объектам, конспектируя самые важные моменты. Гарантируется, что вы узнаете множество таких возможностей, о которых раньше и не подозревали;
  • наиболее разумный способ — выполнить нужные вам операции в макрорекордере и потом проанализировать созданный им код. Однако, к сожалению, гарантировать то, что макрорекордер покажет вам самый эффективный путь, невозможно.

И напомним еще один момент, про которые мы уже говорили: справки по Visual Basic for Application на русском языке, к сожалению, не существует. Возможно, в какой-то степени ее сможет заменить этот сайт, в котором рассмотрено множество свойств и методов самых важных объектов приложений Office.

Создание приложений на языке VBA для MS Access

Небольшую и несложную базу данных или приложение Access можно создать в СУБД Access без использования языков программирования SQL и Visual Basic. В СУБД Access имеется достаточно средств (различных мастеров и конструкторов) для визуального проектирования таблиц, запросов, форм и отчетов.

Для решения некоторых задач автоматизации приложений Access можно использовать макросы вместо языка программирования Visual Basic (например, при создании главной и подчиненной кнопочной формы). Но создание коммерческих баз данных в СУБД Access невозможно без применения визуального языка программирования Visual Basic и языка запросов SQL.

Для автоматизации действий над объектами в Microsoft Access и в других приложениях Microsoft Office применяются макросы и модули. Макросы — это небольшие программы на языке макрокоманд (языке сценариев). Модули — это наборы описаний и процедур на языке программирования VBА, т.е. модули — это объекты, содержащие программы на языке Visual Basic.

Основное назначение макросов и модулей — это создание удобного интерфейса приложения, в котором формы и отчеты открывались бы при нажатии кнопок в этих формах или на панелях инструментов. Модули являются более мощным средством создания программных расширений в среде Microsoft Office. Применение модулей требует от пользователей знаний основных принципов объектно-ориентированного программирования.

Попробуй обратиться за помощью к преподавателям

Программирование на VBA в СУБД Access используют в основном разработчики (программисты) в процессе создания приложений (различных баз данных), с которыми работают пользователи.

Для программирования в Access используется не приложение Visual Basic, а встроенная в Microsoft Office система программирования Visual Basic for Applications (VBA). Система программирования VBA является неотъемлемой частью приложений Microsoft Office и предназначена для визуального программирования в таких приложениях как Word, Excel, PowerPoint, Access и т.д. В VBA языком программирования является Visual Basic (VB), а инструментальная среда программирования реализована в виде редактора VB, который может активизироваться из любого приложения MS Office. Редактор Visual Basic является отдельным приложением, поэтому можно переключаться между приложениями Microsoft Office и редактором Visual Basic клавишами $Alt+F11$.

Модули

Система программирования VBA предназначена для написания кода программ модулей, которые хранят текст этих программ.

Задай вопрос специалистам и получи
ответ уже через 15 минут!

Модуль — это совокупность описаний, инструкций и процедур, сохраненных под общим именем. В Access существует два типа модулей: стандартные модули и модули класса. Основное содержание модулей — это процедуры на языке VBA.

Процедура — совокупность описаний и инструкций в модуле, которые выполняются как одна программная единица. В VBA существуют процедуры-подпрограммы Sub и процедуры- функции Function.

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

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

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

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

Первый способ создания пустого модуля: выбрать Да в поле наличия модуля на вкладке Все в окне диалога Форма или Отчет (рис.1). Окно диалога вызывается командой Свойства из контекстного меню, находясь в конструкторе форм или отчетов.

Другой способ создания модуля выполняется кнопкой Программа на панели инструментов в режиме конструктора форм или отчетов. Если щелкнуть мышью на кнопке Программа, то запуститься редактор VB, в котором мы можем вводить текст программы соответствующего модуля (рис.2).

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

Для просмотра модулей класса, которые связаны с конкретными формами или отчетами и содержатся в модулях объектов, нужно выделить форму или отчет в окне базы данных на вкладке формы или отчеты и щелкнуть на пиктограмме Программа на панели инструментов в главном окне Microsoft Access. Чтобы создать отдельный модуль класса или стандартный модуль, нужно выбрать пункт Модуль класса или Модуль в меню Вставка. Стандартный модуль можно создать, например, путем преобразования макроса. Модули отображаются в окне базы данных на вкладке Модули. Для просмотра процедуры в стандартном модуле или в модуле класса нужно выделить требуемый модуль в окне базы данных на вкладке Модули и щелкнуть на пиктограмме Программа на панели инструментов в главном окне Microsoft Access или щелкнуть на кнопке Конструктор в окне базы данных. Откроется редактор Visual Basic, на панели редактора кода которого отображаются процедуры.

Объекты и события

В СУБД Access объектами являются таблицы, формы, запросы, окна, меню, кнопки, линии прокруток и т.д., в том числе и приложение Access. Для каждого объекта определены возможные события. Некоторые события возникают от действия пользователей (щелчков мыши, нажатия клавиш клавиатуры и др.), а другая часть событий происходят в результате свершения других событий, например открытия окна. Каждое событие проявляется в определенных действиях программы.

Существует две группы действий на события:

  1. Действия первой группы определены свойствами объекта, и их изменить в процессе программирования на VBA нельзя. Эти свойства устанавливаются ОС Windows и системой программирования VBA. Примером может быть свертывание окна при щелчке на кнопке Свернуть.
  2. Вторая группа действий (отклика) на события определяется программистом. Для этой группы действий программист может создать процедуры VBA для каждого возможного события, но на практике программист заполняет кодом процедуры только для тех событий, которые требуются для данного приложения Access.

Так и не нашли ответ
на свой вопрос?

Просто напиши с чем тебе
нужна помощь

Ссылка на основную публикацию
ВсеИнструменты
Adblock
detector
×
×