Tooprogram.ru

Компьютерный справочник
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Access макросы примеры

Создание макроса пользовательского интерфейса

В Microsoft Access макросы, присоединенные к объектам пользовательского интерфейса, таким как кнопки, текстовые поля, формы и отчеты, называются макросами пользовательского интерфейса. Это позволяет отличить их от макросов данных, которые присоединяются к таблицам. С помощью макросов пользовательского интерфейса можно автоматизировать ряд действий, таких как открытие другого объекта, применение фильтра, запуск операции экспорта и многие другие задачи. В этой статье представлен новый конструктор макросов, а также описаны основные задачи, связанные с созданием макроса пользовательского интерфейса.

Примечание: Эта статья не относится к веб-приложениям Access.

В этой статье

Общие сведения

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

Каждый макрос состоит из одной или нескольких макрокоманд. В зависимости от контекста, в котором вы работаете, некоторые макрокоманды могут быть недоступны.

Построитель макросов

Ниже описаны основные основные функции построителя макросов.

Каталог макрокоманд Макрокоманды упорядочены по типу и доступны для поиска.

IntelliSense. При вводе выражений IntelliSense предлагает возможные значения и позволяет выбрать нужный вариант.

Сочетания клавиш Использование сочетаний клавиш для более быстрой и удобной написания макросов.

Поток программы Создавайте более удобочитаемые макросы с помощью строк комментариев и групп действий.

Условные операторы Обеспечивает более сложное выполнение логики с поддержкой вложенных функций если и/или других.

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

Упрощение совместного использования Скопируйте макрос, а затем вставьте его в виде XML-файла в сообщение электронной почты, запись в группу новостей, блог или образец кода.

В этом видеоролике показано, как пошаговое руководство по основным областям построителя макросов.

Создание автономного макроса

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

На вкладке Создание в группе Макросы и код нажмите кнопку Макрос.

Откроется конструктор макросов.

На панели быстрого доступа нажмите кнопку Сохранить.

В диалоговом окне Сохранение введите имя макроса, а затем нажмите кнопку «ОК».

Создание внедренного макроса

Данная процедура позволяет создать макрос, внедренный в свойство события объекта. Такие макросы не отображаются в области навигации, но их можно вызывать их событий, например Загрузка или Нажатие кнопки.

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

В области навигации щелкните правой кнопкой мыши форму или отчет, в которые нужно добавить макрос, и выберите команду Режим макета.

Если окно свойств не отображается, нажмите клавишу F4.

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

В области задач «Страница свойств» откройте вкладку Событие.

Щелкните поле свойства для события, которое должно активировать макрос. Например, если вы хотите, чтобы макрос выполнялся при нажатии кнопки, щелкните поле свойства Нажатие для кнопки.

Если поле свойства содержит слова [Внедренный макрос], это означает, что для этого события уже создан макрос. Вы можете изменить его, выполнив действия, описанные далее в этой процедуре.

Если поле содержит слова [Процедура обработки событий], это означает, что для данного события уже была создана процедура Visual Basic для приложений (VBA). Перед внедрением макроса в событие потребуется удалить процедуру. Для этого можно удалить слова [Процедура обработки событий], но сначала следует изучить процедуру, чтобы убедиться, что ее удаление не нарушит функциональность базы данных. В некоторых случаях можно воспроизвести функции процедуры VBA с помощью внедренного макроса.

Нажмите кнопку » построить «.

Если откроется диалоговое окно Построитель, убедитесь, что выбран пункт Макросы, а затем нажмите кнопку ОК.

Откроется конструктор макросов. Перейдите к следующему разделу, чтобы добавить макрокоманды в макрос.

Добавление макрокоманд в макрос

Макрокомандами называются отдельные команды, которые образуют макрос. Имя макрокоманды отражает ее назначение, например НайтиЗапись или ЗакрытьБазуДанных.

Шаг 1. Просмотр или поиск макрокоманд

Чтобы добавить макрокоманду, прежде всего нужно найти ее в раскрывающемся списке Добавить новую макрокоманду или в каталоге макрокоманд.

По умолчанию в раскрывающемся списке Добавить новую макрокоманду и в каталоге макрокоманд выводятся только макрокоманды, которые выполняются в ненадежных базах данных. Чтобы просмотреть все макрокоманды:

На вкладке Конструктор в группе Показать или скрыть выберите пункт Показать все действия.

Если каталог макрокоманд не отображается, на вкладке Конструктор в разделе Показать или скрыть нажмите кнопку Каталог макрокоманд.

Найти макрокоманду можно одним из следующих способов:

Щелкните стрелку раскрывающегося списка Добавить новую макрокоманду и прокрутите список вниз, чтобы найти макрокоманду. Сначала выводятся элементы управления выполнением программы, а затем — макрокоманды в алфавитном порядке.

Найдите макрокоманду в области «Каталог макрокоманд». Макрокоманды сгруппированы по категориям. Разверните категории для просмотра макрокоманд. При выборе макрокоманды в нижней части каталога выводится ее краткое описание.

Выполните поиск макрокоманды, введя текст в поле «Поиск» в верхней части области «Каталог макрокоманд». По мере ввода список макрокоманд фильтруется и в нем выводятся все макросы, которые содержат текст. Access ищет введенный текст в именах макросов и их описаниях.

Шаг 2. Добавление макрокоманды в макрос

После того как вы нашли нужную макрокоманду, добавьте ее в макрос с помощью одного из следующих способов:

Выберите макрокоманду в списке Добавить новую макрокоманду или просто начните вводить имя макрокоманды в поле. Access добавит макрокоманду туда, где отображался список Добавить новую макрокоманду.

Перетащите макрокоманду из каталога макрокоманд в область макроса. Появится полоса вставки, показывающая, куда будет вставлена макрокоманда, когда вы отпустите кнопку мыши.

Дважды щелкните макрокоманду в каталоге макрокоманд.

Если в области макроса выбрана макрокоманда, Access добавит новую макрокоманду под выбранной.

Если в области макроса выделен блок Группа, Если, Иначе если, Иначе или Вложенный макрос, Access добавит новую макрокоманду в него.

Если в области макроса не выбраны макрокоманды и блоки, Access добавит новую макрокоманду в конец макроса.

Если вы уже создали один или несколько макросов, они указаны в узле В этой базе данных каталога макрокоманд.

При перетаскивании автономного макроса (который указан в разделе Макросы) в область макроса создается макрокоманда ЗапускМакроса, которая выполняет перетащенный макрос. Затем вы можете с помощью раскрывающегося списка вызвать вложенные макросы, если они имеются.

Читать еще:  Курсы microsoft office excel

Если вы хотите просто скопировать макрокоманды из автономного макроса в текущий (вместо того чтобы создавать макрокоманду ЗапускМакроса), щелкните его правой кнопкой мыши в каталоге макрокоманд и выберите команду Добавить копию макроса.

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

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

Шаг 3. Ввод аргументов

Для большинства макрокоманд требуется по крайней мере один аргумент. Чтобы просмотреть описание любого из аргументов, выделите макрокоманду, а затем наведите указатель на аргумент. Для многих аргументов вы можете выбрать значение из раскрывающегося списка. Если для аргумента требуется ввести выражения, IntelliSense помогает сделать это, предлагая возможные значения по мере ввода, как показано на рисунке ниже:

Когда появится значение, которое вы хотите использовать, добавьте его в выражение, дважды щелкнув его или выделив его с помощью клавиш со стрелками, а затем нажав клавишу TAB или ВВОД.

Дополнительные сведения о создании выражений см. в статье Введение в использование выражений.

Сведения об использовании IntelliSense со свойствами веб-базы данных

При создании макроса пользовательского интерфейса, внедренного в веб-совместимую форму, IntelliSense позволяет добавлять любые свойства формы в выражение. Однако в веб-базе данных с помощью макросов пользовательского интерфейса можно получать доступ только к некоторым свойствам формы. Например, если в форме «Форма1» есть элемент управления «Элемент1», IntelliSense позволит добавить [Формы]![Форма1]![Элемент1].[ControlSource] в выражение в макросе пользовательского интерфейса. Но если опубликовать базу данных в службах Access, макрос, содержащий выражение, будет вызывать ошибку при запуске на сервере.

В таблице ниже перечислены свойства, которые вы можете использовать в макросах пользовательского интерфейса в веб-базах данных:

Caption, Dirty, AllowAdditions, AllowDeletions, AllowEdits

Макросы в access

Макросы в access представляют собой как бы контейнер, в котором хранятся простейшие команды (макрокоманды), последовательно выполняющиеся. Закономерно возникает вопрос: «А зачем они тогда нужны, если все простейшие команды и так доступны с помощью команд меню и кнопок панелей инструментов?».

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

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

В форме для просмотра есть кнопка «Ввод данных», при нажатии на которую запускается макрос «ВызовФормыВвода». Первая команда «ОткрытьФорму» загружает вспомогательную форму для изменения информации. Команда «КЭлементуУправления» отправляет нас в невидимое ключевое поле «Код».

«НайтиЗапись» загружает запись с тем же кодом, что в форме для просмотра (если мы просматривали данные по Войтович, то во вспомогательной форме тоже должны быть данные по Войтович). Четвёртая команда «КЭлементуУправления» переводит курсор в поле [Фамилия], т. е в первое поле формы.

Аксесс довольно сложная программа. Это подтверждает тот факт, что в интернете можно найти массу информации по ней. Однако, вы знаете что на самом деле достаточно знать лишь 20% инструментов, чтобы создавать и настраивать 80% баз данных в программе?
В-третьих
, макросы в access могут запускаться только при определённых и нужных нам событиях (открытие или закрытие формы, щелчок мышкой, нажатие кнопки и др.).

Например, требуется при нажатии на заданную кнопку вызвать системный калькулятор Windows. Очень удобно и не надо делать лишних движений.

Кнопке «Калькулятор» просто задаётся макрос с единственной макрокомандой «ЗапускПриложения», в которой указывается командная строка к приложению (например, С:Windowscalc. exe). Хотя можно просто задать гиперссылку кнопке «Калькулятор» на программу calc. exe.

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

Первая макрокоманда «ОтменитьСобытие» просто-напросто не выводит на экран пустой отчёт.

Вторая команда «Сообщение» выводит на экран диалоговое окно с поясняющим текстом. Если бы сообщение не выводилось, то рядовой пользователь не понял бы, почему отчёт не появляется на экране, решив, что произошла ошибка.

Выше показаны только простые и очевидные плюсы использования макросов. Если хорошенько подумать, то найдётся ещё немало убедительных доводов в пользу применения макросов, основное назначение которых – облегчить и без того тяжёлую жизнь пользователя компьютера с помощью автоматизации рутинных действий.

Использование макросов в базе данных Microsoft Access, Исследовать возможности Access по созданию макросов

Исследовать возможности Access по созданию макросов

Использование макросов в базе данных Microsoft Access

С помощью макросов можно выполнить практически все действия над объектами Access. Существенной особенностью Access по сравнению с такими компонентами Microsoft Office, как Word и Excel, является возможность с помощью макросов и модулей VBA Определять реакцию приложения на различные события в формах и отчетах, такие как нажатие кнопок, изменения данных, открытие и закрытие форм и отчетов, получение формой или элементом управления формы фокуса и т. д.

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

В Microsoft Access 2000 содержится список макрокоманд, сгруппированных по категориям: работа с данными в формах и отчетах; выполнение команд, макросов, процедур и запросов; работа с объектами; импорт/экспорт данных и объектов и прочие. В категорию ” ” собранны все макрокоманды, которые позволяют влиять на интерфейс приложения.

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

Использование макросов оправдано тем, что их легко создавать, и для этого не нужно изучать синтаксис языка программирования. Как будет показано в следующем разделе, для создания макроса требуется знать лишь основные приемы работы в Microsoft Access и Windows, такие как перетаскивание объектов из окна База данных в специальное окно – Конструктор макросов, выбор действия из списка и ввод выражений в ка­честве аргументов макрокоманды. Поэтому, если очень не хочется изучать синтаксис языка VBA или это представляется слишком трудным, смело применяйте макросы, и вы получите приложение с достаточно большими функциональными возможностями.

Читать еще:  Https support office com

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

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

Однако использование макросов имеет и некоторые недостатки:

§ Возможности макрокоманд ограничены по сравнению с возможностями языка VBA, поэтому в ряде случаев без программирования на VBA не обойтись, хотя сначала нужно быть уверенным, что эти дополнительные возможности действительно нужны. Язык VBA предоставляет более ши­рокие возможности для работы с данными, позволяет использовать меха­низм программирования объектов для связи с другими приложениями, вызывать функции из библиотек динамической загрузки (DLL) Windows и создавать собственные специализированные функции.

§ Макросы можно использовать практически везде, где используются про­цедуры VBA, однако процедуры VBA, как правило, выполняются быстрее.

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

Тем не менее, во многих случаях использование макро­сов вполне оправдано, т. к. это существенно упрощает и ускоряет разработ­ку приложения. Их можно использовать при создании небольших однополь­зовательских приложений, хотя при создании многопользовательских или клиент-серверных приложений, где скорость работы приложения критична, лучше применять VBA.

2. Основная часть.

2.1. Создание макросов

В Microsoft Access существует специальное средство для создания макросов – Конструктор макросов. Рассмотрим процесс создания макроса с помощью Конструктора.

Конструктор макросов

Открыть окно Конструктор макросов для создания нового макроса можно двумя способами:

1. Раскройте список макросов в окне База данных, щелкнув ле­вой кнопкой мыши по ярлыку Макросы, и нажмите кнопку Создать в верхней части окна.

Рис. 1. Кнопка для создания макроса

2. Щелкните по стрелке вниз на кнопке Новый объект на па­нели инструментов База данных и выберите элемент Макрос.

Рис. 2. Новый объект на па­нели инструментов База данных

Окно Конструктора построено аналогично Конструктору таблиц, т. е. разде­лено по горизонтали на две части — панель описаний и панель аргументов.

Рис. 3. Конструктор макросов и панель аргументов

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

Строка в столбце Макрокоманда представляет собой поле со спи­ском, в котором можно выбрать нужную макрокоманду.

Строка в столбце Примечание — это обычное текстовое поле, в которое можно ввести комментарий, описывающий выполняемое действие.

Когда поле Макрокоманда заполнено, в нижней части окна Конст­руктора макроса появляется панель аргументов, которая служит для ввода значений аргументов соответствующей макрокоманды. Список полей на этой панели зависит от выбранной макрокоманды и может отсутствовать, если макрокоманда не имеет аргументов. Таким образом, при создании мак­росов не нужно запоминать список аргументов для каждой макрокоманды.

На панели аргументов имеются два поля, которые позволя­ют задать имя фильтра и условие отбора записей. Для того чтобы задать условие отбора записей, можно воспользоваться построителем выражений.

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

Существует еще один очень простой способ ввода макрокоманды. Допус­тим, нужно создать макрос, который должен открывать форму “Вычисление” в приложении “db1”. Для этого в окне База данных нужно щелкнуть по Форме, затем, используя панель инструментов (способ 2), открыть Конструктор макросов и перетащить с помощью мыши Форму “Вычисление” в поле Макрокоманда окна Конструктора макроса.

Тогда в поле Макрокоманда автоматически появится макрокоманда ОткрытьФорму, а на панель аргументов автоматически заполняются поля: в поле Имя формы появляется имя формы “Вычисление”, в поле Режим – значение по умолчанию Форма, в поле Режим окна – значение Обычное. Остальные поля останется пустыми.

Кроме того, можно сделать записи в этой форме недоступными для изменений, для этого в поле Режим данных нужно ввести значение Только чтение.

Рис. 4. Автоматическое создание макрокоманд путем перетаскивания объектов

Аналогично можно создавать макрокоманда, перетаскивая из окна База данных таблицы, запросы, отчеты и другие макросы. При этом будут создаваться соответствующие макрокоманды: ОткрытьТаблицу, ОткрытьЗапрос, ОткрытьОтчет, ЗапускМакроса.

Для ввода аргументов макрокоманды чаще всего требуется выбрать значения из списков или вводить выражения. Для ввода выражений можно воспользоваться построителем выражений, кнопка которого находится справа от поля аргумента. Еще одна кнопка построителя выражений находится на панели инструментов. Как и в других случаях, перед выражением нужно ставить знак равенства (=). Исключения составляют аргумент Выражение макрокоманды задать Значение и аргумент Число повторений макрокоманды ЗапускМакроса. Если ввести знак равенства перед выражением, задающим значение этих аргументов, то оно будет вычисляться дважды, что может привести к нежелательным результатам.

Если в качестве аргумента макрокоманды необходимо задать имя объекта базы данных, то его можно либо ввести с помощью клавиатуры, либо выбрать из раскрывающегося списка, либо указать название объекта, перетащив его из окна базы данных.

Итак, созданная нами макрокоманда будет открывать форму “Вычисление” в режиме Только чтение и показывать в ней только менеджеров по продажам. Как уже было сказано ранее, макрос может содержать последовательность из нескольких макрокоманд. Поэтому в этом же макросе в следующей строке мы выберем макрокоманду Сообщение, которая после открытия формы будет отображать диалоговое окно с сооб­щением о том, какие клиенты представлены в форме. Для этого введем в поле Сообщение на панели аргументов текст сообщения, например

Установлен фильтр по Фамилиям, остальные поля можем оставить без изменения. Аргумент Сигнал определяет, будет ли вывод сообще­ния сопровождаться звуковым сигналом. Аргумент Тип определяет вид диалогового окна сообщения. Аргумент Заголовок позволяет за­дать текст, который будет выведен в заголовке окна сообщения.

Читать еще:  Ввести ключ office

Если база данных большая, отбор записей в форме может занять некоторое время, поэтому рекомендуется вывести на экран курсор в форме песочных часов, который будет показывать, что идет обработка данных. Чтобы сде­лать это, воспользуемся макрокомандой ПесочныеЧасы. Макро­команды в макросе выполняются в той последовательности, в которой они записаны в столбце Макрокоманда, т. е. сверху вниз. Макрокоманду ПесочныеЧасы нужно поставить первой, т. к. курсор должен из­мениться перед выводом формы. Таким образом, нам нужно вставить новую строку на панели описаний. Для этого установим курсор в первую строку панели и нажмем кнопку Добавить строки на панели инстру­ментов или просто клавишу

Макросы в Access: что это такое и как создать и запустить макрос

Microsoft Access довольно популярная программа для создания баз данных, её используют из-за её простоты, работу с ней проходят в школах на уроке информатики. Для изучения этой программы не нужно каких либо знаний программирования. Сегодня мы разбираемся что такое Макросы в Microsoft Access, как можно создать и запускать макрос, а также рассмотрим рекомендации для новичков.

Понятие макроса

БД Access состоят из объектов хранения и обработки значений в таблицах. Одни из таких объектов – макросы Access – программные единицы, использующиеся для внесения изменений в данных базы или пользовательском интерфейсе.

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

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

  • система предлагает каталог микрокоманд с предустановленными действиями и интуитивно понятными наименованиями, из которых выбирается необходимое;
  • макрос используется не один раз, а копируется из ранее созданного;
  • в командах используются условия;
  • горячие сочетания клавиш для упрощения и ускорения работы;
  • добавление комментариев, которые впоследствии помогут понять работу программы;
  • группы команд, выполняющиеся одна за другой.

Макрокоманды

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

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

Чтобы добавить команду в макрос, ее находят в каталоге и дважды кликают по наименованию. Можно просто выбрать нужную операцию в выпадающем списке макроса или перетащить ее из каталога в поле макроса.

Конструктор макросов

Действия по разработке макросов Access выполняют в конструкторе. Команда выбирается из списка и добавляется в окно макроса. Здесь операция раскрывается и запрашивает ввод параметров.

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

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

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

Макросы событий

Макросы на форму Access добавляют сразу на элемент управления. При создании элемента автоматически открывается мастер, определяющий действия, которые выполняет макрос в ответ на событие со стороны этого элемента. Яркий пример – действия при нажатии на кнопку формы.

В мастере выбираем категорию «Разное» — «Выполнить макрос» и выбираем заранее созданный объект из списка предложенных. Таким образом, программа привязывается к элементу формы и реагирует на событие со стороны этого элемента.

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

Процедура запускается в ответ на изменение фокуса, обновление формы, нажатие клавиш и кнопок, движение указателя мыши и т. д. Список событий зависит от элемента управления.

Макросы данных

В версии Access 2010 и выше стали доступны макросы данных. Они вызываются изменениями, происходящими в элементах какого-либо объекта, или независимы и вызываются по наименованию. Благодаря этому типу макросов Access приобретает возможности «продвинутых» СУБД (система управления базами данных).

Теперь возможна фиксация истории изменений строки таблицы, проверка параметров добавляемой записи перед ее вставкой – таким образом в СУБД, например, MS SQL Server работают триггеры. При редактировании отдельных полей система может формировать и отправлять уведомления на электронную почту пользователей.

Эти программные единицы добавляются в режиме таблицы. На вкладке «Работа с таблицами» — «Таблица» выбирается, когда будет срабатывать макрос: до или после изменения/удаления, после вставки. Здесь же можно добавить именованный макрос, вызываемый по наименованию. Список макрокоманд здесь содержит операции, которые выполняются с данными – ошибками в значениях, полями, записями таблиц.

Условия

Часто необходимо, чтобы макрос работал не каждый раз, а только в том случае, когда соблюдается какое-либо условие. Для задания этого условия в макрос Access добавляется макрокоманда «Если» из каталога. Здесь прописывается условие, при котором будет выполняться следующая операция. При необходимости добавляется также команда «Иначе» или целый дополнительный блок «Иначе если».

В приведенном примере мы закрываем форму «Абитуриенты», если поле «Фамилия» пустое. Если же это не так, мы сохраняем запись и только после этого закрываем форму.

Благодаря новому конструктору макросов в Access, начиная с версии 2010, разработчик может гибко настроить систему и обеспечить большую безопасность данных в таблицах. Желаем вам удачи в освоении новых возможностей MS Access.

Ссылка на основную публикацию
Adblock
detector