Макрос — это объект БД. Язык макросов
является средством программирования,
которое позволяет реализовать задачи
пользователя, выполняя необходимые
действия над объектами БД и их элементами.
Макрос — это программа, состоящая из
последовательности макрокоманд.
Макрокоманда
— это инструкция, ориентированная на
выполнение определенного действия.
Например, макрокомандой можно открыть
форму, отчет, запустить на выполнение
запрос, применить фильтр, присвоить
значение и пр.). Язык макросов обеспечивает
возможность решения большинства задач
пользователя, не прибегая к программированию
на языке Visual Basic.
Макросы определяют набор методов
обработки объектов и их элементов. В
ACCESS имеются средства, обеспечивающие
взаимодействие макросов с объектами и
их элементами на основе событий. События
наступают при выполнении определенных
действий, к которым прежде всего относятся
действия пользователя. Последнее
обстоятельство позволяет управлять
выполнением программы извне. Пользователь,
выполняя различные действия, например
в формах (нажатие кнопки мыши, ввод и
редактирование данных, выбор элемента
списка и пр.) инициирует выполнение
макросов, автоматизирующих решение
связанных с действиями пользователя
задач. Такой подход существенно отличает
программирование на языке макросов от
программирования в традиционном
понимании, при котором только программа
управляет процессом.
Заметим, что наличие аппарата запуска
программ через события, не исключает
возможности написания программ на языке
макросов, которые без вмешательства
пользователя будут решать нужные задачи.
В этом случае задача решается рядом
взаимосвязанных макросов.
7.1. Создание макросов
Макросы могут быть простые и групповые.
Простой
макрос
— это последовательность макрокоманд.
Групповой
макрос
— это последовательность простых
макросов. При этом каждый простой макрос
внутри группового должен иметь свое
имя. Поскольку язык макросов является
языком программирования, то он долен
иметь средства для описания всех типов
вычислительных процессов: линейных,
разветвляющихся и циклических.
Создание
макроса:
-
Открыть вкладку Макросы
в окне БД -
Кн. Создать.
Откроется окно для конструирования
макроса, а также появится ПИ конструктора
макросов и пункт системного меню Макрос. -
Для создания любого макроса окно
конструктора макросов должно иметь
минимум два столбца: макрокоманда
и примечание.
В примечаниях пользователь пишет
обычно поясняющую информацию, которая
в принципе может отсутствовать. В каждой
строке пользователь из раскрывающегося
списка выбирает имя нужной макрокоманду
и указывает для нее необходимые
аргументы. Некоторые аргументы задаются
по умолчанию. Пользователь может им
задать другие значения (обычно выбрать
из раскрывающегося списка). Такие
аргументы, как имя объекта, можно
перетащить мышью из окна БД. Если
создается групповой макрос, то необходим
третий столбец Имя
макроса,
который можно открыть из меню: Вид/Имена
макросов или соответствующей кн. на
ПИ конструктора макросов. Если макрос
реализует разветвляющийся процесс, то
еще необходим и столбец условий:
Вид/Условия
или кн. Условия
на ПИ конструктора макросов. Количеством
столбцов в окне конструктора макросов
можно управлять: Сервис/Параметры
во вкладке Вид
в группк опций Конструктор
макросов
надо установить флажки Столбец
имен
или флажок Столбец
условий
или оба флажка. -
Закрыть макрос, сохранив его с заданным
пользователем именем.
Созданный макрос появится во вкладке
Макросы
окна БД.
Способы
запуска макроса:
-
Выделить макрос в окне БД и кн. Выполнить
-
В режиме конструктора макросов:
Макрос/Выполнить
или кн. Выполнить
на ПИ -
Из другого макроса с использованием
макрокоманды ЗапускМакроса.
Отладка
макроса
Для отладки макроса используют режим
запуска макроса по шагам, при котором
макрос приостанавливает свою работиу
после выполнения каждой макрокоманды,
так что пользователь может оценить
правильность решения задачи. Установку
этого режима можно сделать, находясь в
режиме конструктора макроса:
Запуск/По шагам или 1с
по соответствующей кнопке на ПИ
конструктора макросов. Далее, как,
обычно запустить макрос на выполнение.
Макрос будет выполняться по шагам.
После выполнения каждого шага можно
продолжить выполнение следующего шага
кнопкой Продолжить
или закончить выполнение макроса,
прервав его работу кнопкой Прервать.
Пример
21 простого линейного макроса
Создать макрос, открывающий форму Детали
в виде таблицы и отображающий только
гайки, т. е. нужно открыть отфильтрованные
данные. Затем форму закрыть.
Макрос, решающий поставленную задачу,
будет таким:
Макрокоманда |
Примечание |
ОткрытьФорму (Имя формы: Детали, Режим: Таблица, Условие |
Задание условия отбора позволяет |
Сообщение (Сообщение: |
Для приостановки выполнения макроса. |
Закрыть (Тип объекта: Форма, Имя объекта: |
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
- #
- #
- #
- #
- #
- #
- #
- #
- #
- #
- #
Раздел 4. РАЗРАБОТКА ПРИЛОЖЕНИЙ ПОЛЬЗОВАТЕЛЯ
Лекция 10 Макросы и их создание
Макрос
— это программа, состоящая из последовательности макрокоманд
. Макрокоманда
— это инструкция, ориентированная на выполнение определенного действия.
Например, макрокомандой можно открыть форму, отчет, напечатать отчет, запустить на выполнение запрос, применить фильтр, присвоить значение, создать свое меню для формы или отчета. Макрокоманда ЗадатъКомандуМеню позволяет вьшолнить любую заданную команду меню. Имеющийся в Access набор макрокоманд (около 50) реализует практически любые действия, которые необходимы для решения различных задач.
Язык макросов обеспечивает возможность выполнения большинства задач без использования программирования на Visual Basic. Макросы, являясь надстройкой над Visual Basic, обеспечивают пользователя средствами решения задач, не требующими детального знания программирования. Язык макросов является языком более высокого уровня, чем Visual Basic.
Формирование макроса осуществляется в диалоговом режиме и сводится к записи в окне макроса последовательности макрокоманд, в соответствии с которой они и выполняются.
Создание макроса начинается в окне базы данных, где надо выбрать закладку Макросы и нажать кнопку [Создать], которая открывает соответствующее окно.
Рис. 10.1 .Окно базы данных
В этом окне макрокоманды, составляющие макрос, можно ввести в столбец Макрокоманда, для чего достаточно нажать кнопку раскрытия списка макрокоманд в этом столбце и выбрать нужную макрокоманду (рис. 10.1). Можно ввести имя макрокоманды и с клавиатуры. Макрокоманда по умолчанию создается со значениями аргументов, соответствующими выбранному объекту. Например, при перетаскивании таблицы создается макрокоманда ОткрытьТаблицу.
В нижней части окна можно сформировать Аргументы макрокоманды. Значения аргументов задаются путем выбора их из списка, открывшегося в данной строке. В поле справа от строк аргументов выводится сообщение с пояснениями для выбранного аргумента. В строки столбца Примечание вводится необязательный комментарий, описывающий результат выполнения макрокоманды. Каждая новая макрокоманда макроса добавляется к уже существующим макрокомандам записью ее в ближайшую незанятую строку бланка. При этом порядок размещения макрокоманд в бланке определяет последовательность их выполнения. После ввода всех макрокоманд в макрос его надо сохранить, воспользовавшись командой меню ФайлСохранить или кнопкой на панели инструментов макроса. Для выполнения макроса можно нажать в Access 2003 кнопку на панели инструментов [Запуск], в Access 2007 на пиктограмму Макрос. Если макрос уже закрыт, то его надо выбрать в окне базы данных и нажать кнопку [Запуск] в этом окне (в Access 2007 2 раза щелкнуть мышкой по имени макроса ). Таким
Рис. 10.2. Окно создания макроса
образом, по инициативе пользователя задача может решаться многократно. Для просмотра и
редактирования существующего макроса надо открыть его и выбрать его в окне базы данных и нажать кнопку [Конструктор], в Access 2007 2 раза щелкнуть мышкой по имени макроса.
Группа макросов создается как один макрос, в котором содержатся несколько макросов (например, связанных с решением одной задачи или используемых при работе с одной формой). Работать с группой часто оказывается удобнее, чем с несколькими отдельными макросами.
Для ссылок на макросы, которые вошли в группу макросов, используется следующий синтаксис:<Имя Группы Макросов>.<Имя Макроса> Использование условий в макросе. Условия позволяют задать порядок передачи управления между макрокомандами в макросе и обеспечивают выполнение определенных ветвей алгоритма. Например, если в макросе проверяется значение поля в форме на соответствие заданным условиям, то для одних значений может потребоваться вывод сообщения, а для других значений — вывод отчета.
Условие вводится в строку макрокоманды в столбец Условие, который вызывается в окно макроса нажатием соответствующей кнопки на панели инструментов. Задается условие с помощью логического выражения.
Ветвления в программе. В программе, состоящей из макрокоманд, можно организовать ветвления.
Для организации ветвлений в программе нужно наряду с условиями использовать макрокоманды ОстановитъМакрос и ЗапускМакроса последняя из которых позволяет создавать также циклы в программах.
Организация выполнения макросов. При запуске макроса выполнение начинается с первой макрокоманды и следует по алгоритму, реализуемому макросом. В процессе выполнения проверяются условия и в зависимости от результата выполняются те или иные макрокоманды или макросы. При вызове другого макроса управление передается вызванному макросу. Вызванный макрос может выполняться несколько раз. После выполнения вызванного макроса управление возвращается к вызывающему макросу и продолжается выполнение его макрокоманд. При этом, следуя алгоритму, макрос выполняется по одному из заранее определенных путей из множества возможных. Таким образом, макрос сам выбирает этот путь в зависимости от условий.
В Access имеется возможность организации выполнения макросов с использованием механизма расширенной обработки событий (т.е. результатов действий пользователя). Access распознает определенные события, к которым может привязываться запуск макроса. Событиями, например, являются открытие отчета, ввод новых данных, перевод фокуса на другую запись или поле в форме, щелчок мышью. Существуют события формы, события элемента управления, события записи и раздела формы, события отчета и раздела отчета. Различные события вызывают различную реакцию системы, поэтому порядок выполнения макросов зависит от порядка возникновения событий и в значительной степени определяется действиями пользователя в формах. При этом управление программой в основном осуществляется пользователем, который выполняет различные действия, а программа реагирует на них.
Новоуренгойский филиал Профессионального
образовательного
учреждения «Уральский региональный колледж»
КУРСОВАЯ РАБОТА
МАКРОПРОГРАММИРОВАНИЕ.
МАКРОКОМАНДЫ
МДК 01.02 ПРИКЛАДНОЕ ПРОГРАММИРОВАНИЕ
09.02.03 Программирование в компьютерных системах
Обучающейся
гр. П-370 _________ Микаилова Айсун Гюльбаба кызы
10.12.2021
Оценка
за выполнение и защиту курсовой работы _____________
Проверила
_________ Карасова Аида Абдулкадыровна
16.12.2021
Новый Уренгой, 2021
СОДЕРЖАНИЕ
ВВЕДЕНИЕ |
3 |
1 АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ |
5 |
1.1 История развития Visual Basic |
5 |
1.2 Основные модели Visual Basic |
7 |
1.3 Среда разработки Visual Basic for Application |
8 |
1.4 Макропрограммирование |
9 |
1.5 Макрокоманды |
10 |
1.6 Макрос |
11 |
1.7 Создание макросов |
11 |
2 КОНЦЕПТУАЛЬНОЕ ПРОЕКТИРОВАНИЕ |
13 |
2.1 Общая характеристика задачи |
13 |
2.2 Описание последовательности решения задачи в среде MS Excel |
13 |
ЗАКЛЮЧЕНИЕ |
21 |
СПИСОК ИСПОЛЬЗУЕМЫХ ИСТОЧНИКОВ |
23 |
ВВЕДЕНИЕ
В
современном обществе компьютер играет огромную роль, уже трудно представить
труд человека без использования вычислительной техники. Но компьютер сам по
себе не способен даже на простые операции, поэтому для того, чтобы человек мог
использовать компьютер необходимо так называемое программное обеспечение.
Существует огромное количество разнообразных по своим функциям и возможностям
программ, но среди них выделяют два основных типа: системное и прикладное
программное обеспечение. К системному программному обеспечению относят
операционную систему и всё ПО, предназначенное для создания рабочей среды.
Прикладные программы в свою очередь выполняют ту самую работу, которая
необходима человеку. В этой курсовой работе я остановлюсь на обзоре языка
Visual Basic for Application в нем.
Актуальностью
данной темы является то, что на сегодняшний день язык программирования VBA является довольно востребованным среди IT –
специалистов. Программирование на языке VBA не ограничивается записью макросов.
Практически любой пользователь может научиться писать программы на языке VBA,
которые решают самые разнообразные задачи в Excel – от
автоматического выполнения вычислений до создания системы для ввода данных со
своими экранными формами и с возможностью проверки корректности набираемых.
Целью курсовой работы является
освоение и закрепление знаний на языке программирования Visual Basic
в пакете Microsoft Excel.
Объектом
исследования является язык программирования Visual Basic.
Предметом
исследования является проект на основе среды разработки VBA.
Задачи курсовой работы
на языке программирования VBA:
1)
Изучить предметную
область среды разработки VBA.
2)
На основе теоретического анализа среды VBA,
разработать ключевые понятия, основные концепции макропрограммирования,
макрокоманды.
3)
Разработать проект формы пользователя, и
программные модули на конкретном примере.
Методы
исследования, примененные в данной работе, заключаются в основном не в изучении
способах решений, а в самой работе с данным языком программирования.
Структура работы включает в себя
введение, теоретическую часть, практическую часть, заключение, список
литературы.
1 АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ
1.1 История развития Visual Basic
Язык
программирования Basic был создан в 1964 году двумя профессорами из Dartmouth
College – Джоном Кенеми и Томасом Куртцом для обучения
студентов навыкам программирования. Язык получился настолько простым и
понятным, что через некоторое время его начали применять и в других учебных
заведениях. В 1975 году, с приходом первых микрокомпьютеров, эстафету Basic
приняли Билл Гейтс и Пол Аллен, основатели Microsoft. Именно они создали новую
версию Basic для первых компьютеров «Альтаир» (MITS Altairs), способную
работать в 4КБ оперативной памяти. Со временем именно эта версия и превратилась
в один из самых популярных языков программирования в мире.
В начале 90-х годов Microsoft
начала активную борьбу за продвижение в массы своей новой операционной системы Windows.
Но, как известно, пользователей работают не с операционной системой, а с программами,
которые работают в ее среде. Поэтому скорость смены платформы в основном
определяется темпами появления соответствующих прикладных программ.
Однако смена ОС представляет
серьезную проблему и для программистов, так как им нужно было осваивать новую
технологию разработки программ. В тот момент бытующим мнением было то, что Windows
предъявляет более высокие требования к квалификации программиста.
В 1991 году под лозунгом «теперь и
начинающие программисты могут легко создавать приложения для Microsoft»
появилась первая версия нового инструментального средства Microsoft Visual Basic.
В тот момент Microsoft достаточно скромно
оценивала возможности этой системы, ориентируя ее, прежде всего, на категорию
начинающих и непрофессиональных программистов. Visual Basic
1.0 в тот момент был похож не на рабочий инструмент, а на действующий макет
будущей среды разработки. Его принципиальное новшество заключалось в реализации
идей событийно-управляемого и визуального программирования в среде Windows,
которые весьма радикально отличались от классических схем разработки программ.
В 1992 – 1993 годах были
выпущены Visual Basic 2.0, среда разработки которой стала проще в использовании
и работала быстрее, и Visual Basic 3.0 в версиях Standard и Professional. Ко
всему прочему, в состав поставки добавился движок для работы с базами данных
Access.
По общему признанию Visual Basic
стал родоначальником нового поколения инструментов, называемых сегодня
средствами быстрой разработки программ.
Число Visual Basic—
пользователей росло, причем во многом за счет огромной популярности ее
предшественника – QuickBasic.
При этом Visual Basic
быстро «мужал», усиливаясь за счет как развития среды программирования, так и
включения профессиональных элементов языка и проблемно-ориентированных средств.
И к моменту выпуска в 1995 году Visual Basic
4.0 эта система была уже признанным и одним из самых распространенных
инструментов создания широкого класса приложений.
В середине 1998 г. Вышла Visual
Basic 6.0. После этого Microsoft резко изменила политику в отношении языков
семейства Basic. Вместо развития Visual Basic, был создан абсолютно новый язык
Visual Basic .NET, первая версия которого появилась в 2001. Это принципиально
новый язык, имеющий, помимо синтаксиса, очень мало схожего с VB 6.0; и
отличаясь от него так же сильно, как в своё время VB отличался от QBASIC.
VB.NET сразу же занял место VB в Visual Studio, и на этом развитие
классического Visual Basic остановилось.
В 2005 году вышла новая версия Visual
Basic, в комплекте Visual Studio. Порадовала она новым интерфейсом и
возможностями. Язык основан на Visual Basic.NET. Она не была классической
версией VB.
В конце 2007 Microsoft выпустила
новую версию Visual Basic — Visual Basic 2008, которая также была основана
на Visual Basic.NET.
1.2 Основные модели Visual Basic
Классический Visual Basic (версии
5-6). Этот язык очень сильно привязан к своей среде разработки и к операционной
системе Windows, являясь исключительно инструментом написания
Windows-приложений. Привязка к среде заключается в том, что существует большое
количество средств, предназначенных для помощи и удобства программирования:
встроенный отладчик, просмотр переменных и структур данных на лету, окно
отладки, всплывающая подсказка при наборе текста программы (IntelliSense). Все
эти преимущества делают бесполезным и даже невозможным использование Visual
Basic вне среды разработки, например, в обычном текстовом редакторе.
Visual Basic for Applications (VBA). Это
средство программирования, практически ничем не отличающееся от классического
Visual Basic, которое предназначено для написания макросов и других прикладных
программ для конкретных приложений. Наибольшую популярность получил благодаря
своему использованию в пакете Microsoft Office. Широкое распространение Visual
Basic for Applications в сочетании с изначально недостаточным вниманием к
вопросам безопасности привело к широкому распространению макровирусов.
Visual Basic Scripting Edition (VBScript).
Скриптовый
язык, являющийся несколько усечённой версией обычного Visual Basic.
Используется в основном для автоматизации администрирования систем Windows, а
также для создания страниц ASP и сценариев для Internet Explorer.
1.3 Среда разработки Visual Basic for Application
VBA – отличное средство
автоматизации не только простых рутинных операций, которые пользователю
приходится периодически выполнять, например, при подготовке текстов в Word или
расчётов в Excel, но и сложнейших вычислений над большими объёмами данных.
Очень важным фактором,
обуславливающим целесообразность наличия у специалиста любого профиля хотя бы
минимальных знаний о VBA, является то, что в настоящее время VBA становится
стандартом де-факто в качестве встроенного языка программирования не только
приложений, поставляемых компанией Microsoft.
Microsoft лицензирует
ядро VBA и предоставляет технологию его использования другим компаниям,
разрабатывающим программное обеспечение для самых разных предметных областей –
от картографии до бизнеса. Очевидно, что наборы объектов этих приложений
коренным образом отличаются наборов объектов приложений Microsoft Office.
Однако язык программирования и технология работы с объектами, их свойствами и
методами одни и те же.
Квалифицированному
пользователю, профессионально работающему с каким-либо приложением, необходимо
как можно лучше знать все объекты приложения, с которыми ему придётся работать.
Когда же этому пользователю придётся что-либо автоматизировать для выполнения
часто встречающихся операций, то, если в это приложение встроен VBA, пользователю
будет предоставлены язык программирования, среда разработки и технология работы
с объектами, хорошо знакомые ему, например, по Excel.
1.4 Макропрограммирование
Макропрограммирование
(от macro programming, англ.) – это разработка макропрограмм с использованием встроенных
ресурсов программного обеспечения – макросредств. Макросредства включают
макроязык, основа которого – средства определения и использования макрокоманд и
средства макрогенерации; с их помощью макрокоманды превращаются в
макрорасширения – последовательность предложений, вставляемых в программу
вместо макрокоманды. Применительно к пакету Microsoft Office макрокоманда – это
сохраняемая под определенным именем последовательность действий на уровне
команд главного меню, программных инструкций на языке программирования Visual
Basic for Applications.
Макрокоманды,
или макросы, позволяют в десятки, а то и сотни раз убыстрить работу в пакетах
программного обеспечения, благодаря возможности объединенять несколько
последовательно выполняемых команд в одну; выполнять стандартные операции
редактирования и оформления документов (например, задание формата абзацев, типа
шрифтов, установок табуляторов и т.п.); использовать вызов диалоговых окон,
обеспечить принцип умолчания для задания опций команд; автоматизировать запуск
и выполнение приложений (макрокоманда может включать в свою последовательность
другие макрокоманды).
Во
многих офисных продуктах (OpenOffice.org, Microsoft Office и др.), в
графических программах (например, CorelDRAW) при обработке макроса автоматически
выполняется заданная для каждого макроса последовательность действий — нажатия
на клавиши, выбор пунктов меню и т. Д.
1.5 Макрокоманды
Макрокоманда (macros, macro,
instruction) – это предложение языка, идентифицирующее набор простейших команд (инструкций).
В определенном смысле макрокоманда – это минимально возможный программный
модуль. К классу макрокоманд относят встроенные процедуры и функции.
Применительно к Microsoft
Office макрокоманда – это сохраняемая под определенным именем последовательность
действий на уровне команд главного меню, программных инструкций на языке
программирования Basic.
Макрокоманды позволяют:
1)
выполнять
стандартные операции редактирования и оформления документов;
2)
объединять
несколько последовательно выполняемых команд в одну;
3)
использовать
вызов диалоговых окон;
4)
автоматизировать
запуск и выполнение приложений (макрокоманда может включать в себя другие
макрокоманды) и т. д.
Макрокоманды Microsoft Office
делятся на:
1)
клавишные
макрокоманды – последовательность нажатий клавиш, сохраненная в виде программы;
2)
языковые
макрокоманды – последовательность команд на языке программирования VB.
1.6 Макрос
Язык макросов является
языком программирования, который позволяет реализовать задачи пользователя.
Макрос – программа, состоящая из последовательности макрокоманд (см. рисунок
1). Макрокоманда – это инструкция, ориентированная на выполнение определенного действия.
Например, макрокомандой
можно открыть форму, отчет, напечатать отчет, запустить на выполнение запрос,
применить фильтр, присвоить значение, создать свое меню для формы или отчета.
Язык макросов
обеспечивает возможность выполнения большинства задач, не прибегая к
программированию на Visual Basic. Макросы, являясь надстройкой над Visual
Basic, обеспечивают пользователя средствами решения задач, не требующими знания
детального программирования. Язык макросов является языком более высокого
уровня, чем Visual Basic.
Рисунок 1 – Макросы
1.7 Создание макросов
Существует два способа создания макроса: протоколирование и
программирование (написание программы) на языке Visual Basic for Application
(VBA).
Протоколирование – это
способ создания макроса, когда происходит протокольная запись всех действий
пользователя, включая выбор команд меню и нажатие комбинаций клавиш, которые
преобразуются в операторы языка VBA и сохраняются в отдельном файле. В этом случае
при создании макроса регистрируются все действия пользователя и переводятся в
команды языка VBA (см. рисунок 2).
Рисунок 2 – Способ протоколирование макроса
Написание программы на
языке VBA – более сложный способ, однако он позволяет создавать очень мощные
макросы, которые не могут быть созданы при протоколировании (см. рисунок 3).
Рисунок 3 – Способ на языке программирование макроса
2 КОНЦЕПТУАЛЬНОЕ
ПРОЕКТИРОВАНИЕ
Концептуальное
проектирование — начальный этап проектирования, при котором создается черновой
вариант продукта, показывающий принцип закладываемой логики для первоначального
согласования и проверки ограничений средств разработки.
Для того, чтобы
приступить к детальному проектированию, необходимо согласовать общее видение
создаваемого продукта и определиться с тем, как будет реализован функционал и
какая будет логика продукта.
2.1 Общая характеристика
задачи
В Редакторе MS Excel
создать программу суммирования чисел и написать для нее код на Visual Basic For Application(VBA).
2.2 Описание последовательности
решения задачи в среде MS Excel
1)
Создать новую книгу Excel и сохранить ее
как книгу с поддержкой макросов с расширением .xlsm (см. рисунок 4):
Рисунок 4 – Создание новой книги Excel
2)
На вкладке Разработчик открыть
редактор VBA (см.
рисунок 5):
Рисунок 5 – Запуск языка программирования Visual Basic
3)
Вставить новый модуль, нажав в
главном меню во вкладке «Insert» на кнопку «Module» (см. рисунок 6):
Рисунок 6 – Вставка модуля
Откроется окно модуля
(см. рисунок 7):
Рисунок 7 – Открытие окна модуля
4)
Используя команду UserForm меню Insert, вставить в окно кода
редактора новую форму (см. рисунок 8):
Рисунок 8 – Вставка новой формы
По умолчанию ей будет
присвоено имя UserForm1. Рядом откроется окно элементов управления ToolBox (см. рисунок 9):
Рисунок 9 – Открытие новой формы
5)
Разместить на форме элементы
управления Label, TextBox и CommandButton с панели ToolBoox (см. рисунок 10):
Рисунок 10 – Вид формы после вставки элементов управления
6)
Используя окно Properties, отредактировать
свойства формы и элементов управления (см. рисунок 11):
Рисунок 11 – Вид формы после редактирования свойства формы и элементов
управления
7)
Двойным щелчком по кнопке ОК
на форме открыть окно кода и между строчками Private Sub CommandButton1_Click() и End Sub ввести код обработчика
события – нажатия пользователем кнопки «ОК» на форме при выполнении программы
(см. рисунок 12):
Dim a As Integer, b As Integer, s As Integer
a=Val(TextBox1)
b=Val(TextBox2)
s=a+b
TextBox3=Str(s)
Рисунок 12 – Вставка кода в Visual Basic для кнопки «ОК»
По аналогии с пунктом 7 ввести
код обработчика события – одиночный клик мышкой по кнопке «Выход» при
выполнении программы (см. рисунок 13):
UserForm1.Hide
Рисунок 13 – Вставка кода в Visual Basic для кнопки «Выход»
9)
Запустить программу на
выполнение из окна редактора кода (см. рисунок 14):
Рисунок 14 – Запуск программы
10)
В окне основного приложения
откроется диалоговое окно формы (см. рисунок 15):
Рисунок 15 – Диалоговое окно формы
11)
Ввести исходные данные в поля TextBox1 И TextBox2 и нажать на кнопку
«ОК». В поле TextBox3 появится результат суммирования введенных чисел (см. рисунок
16):
Рисунок 16 – Ввод данных в диалоговое окно формы
12)
Для завершения программы
нажать кнопку «Выход».
13)
Добавить на форму третью
кнопку с названием «Очистка» (см. рисунок 17):
Рисунок 17 – Вставка на форму кнопки «Очистка»
14)
Действуя по аналогии с пункта
7, ввести между строчками Private Sub CommandButton3_Click() и End Sub следующий код для очистки
значений текстовых полей (см. рисунок 18):
TextBox1=« »
TextBox2=« »
TextBox3=« »
Рисунок 18 – Вставка кода в Visual Basic для кнопки «Очистка»
15)
Результат (см. рисунок 19):
Рисунок 19 – Результат работы с Visual Basic
ЗАКЛЮЧЕНИЕ
Язык
программирования VBA является диалектом одного из самых популярных и мощных
универсальных языков программирования Visual Basic. В отличие от последнего VBA
предназначен для использования в качестве дополнительного компонента различных
приложений. Первоначально VBA применялся как дополнение к программному пакету
Microsoft Office и позволял значительно расширить его возможности, упростить и
ускорить работу в приложениях, входящих в этот пакет. Но работа с ним требовала
от пользователей хорошей подготовки – знания синтаксической структуры языка VBA и
умения программировать.
VBA
является полноценным языком программирования, позволяющим записать не только
последовательно выполняемые пользователем действия, но и содержащим все
необходимые конструкции языка программирования высокого уровня, включая
разнообразные средства организации ветвлений, циклов и ведения диалога с
пользователем. Весьма удобный редактор VBA позволяет не только писать и
редактировать программы, но и вести их отладку.
В ходе выполнения работы были
закреплены знания по работе в MS Excel и основам программирования на VBA, а
также приобретены практические навыки создания завершенных программных
приложений для MS Excel.
В курсовой работе были
решены следующие задачи:
1) Изучить предметную область среды разработки VBA.
2) На основе теоретического анализа среды VBA, разработать ключевые
понятия, основные концепции макропрограммирования, макрокоманды.
3) Разработать проект формы пользователя, и программные модули на
конкретном примере.
СПИСОК ИСПОЛЬЗУЕМЫХ ИСТОЧНИКОВ
1)
Режим доступа: https://studfile.net/preview/6439633/page:2/ – История развития Visual Basic. Дата обращения: 24.10.2021 – Электрон.
текстовые данные
2)
Режим доступа: https://lektsii.net/4-12983.html – Эволюция Visual Basic. Дата обращения: 24.10.2021 – Электрон. текстовые данные
3)
Режим доступа:
https://studfile.net/preview/6439633/page:3/ – Краткий обзор основных разновидностей Visual Basic. Дата обращения:
25.10.2021 – Электрон. текстовые данные
4)
Режим доступа: https://infourok.ru/osnovnye—elementy—visual—basic—for—application—vba-4776625.html –
Основные элементы Visual Basic for Application (VBA). Дата обращения:
26.10.2021 – Электрон. текстовые данные
5)
Режим доступа: https://studfile.net/preview/928116/page:20/ – Макропрограммирование. Дата обращения: 26.10.2021 – Электрон.
текстовые данные
6)
Режим доступа: https://studopedia.ru/5_49344_makroprogrammirovanie-v-srede-MO.html – Макропрограммирование в среде MO. Дата обращения: 26.10.2021 – Электрон. текстовые данные
7)
Режим доступа: http://lab314.brsu.by/roleg/BD_TiG/theory/macros.htm – Основы создания макросов. Дата обращения: 05.11.2021 –
Электрон. Текстовые данные
Режим доступа:
https://usabilitylab.ru/usability/konczeptualnoe-proektirovanie/ –
Концептуальное проектирование. Дата обращения: 27.10.2021 – Электрон. текстовые
данные
Выходная информация: печатные документы, видеограммы, сообщения, содержащие результаты решения и имеющие определенное назначение в данной предметной области.
Входная информация: данные входных документов, сообщений, файлов БД, входные параметры решения задач.
Чтобы решить задачу пользователя средствами СУБД необходимо сначала спроектировать эту задачу. При проектировании задачи необходимо выполнить постановку и алгоритмизацию задачи на основе исходной БД.
В процессе постановки определяется характеристика задачи, входная и выходная информация.
В характеристику задачи входят цель, назначение, сущность задачи, установка периодичности и сроков решения, разрабатывается общая технология обработки данных.
Алгоритм задачи – это совокупность формальных действий и проверочных условий, выполнение которых осуществляется в определенной логической последовательности и позволяет решить поставленную задачу.
Описание алгоритма включает:
- Назначение и характеристику алгоритма;
- Структуру входных и выходных данных;
- Математическое описание алгоритма (формулы, выражения, методы)
- Контрольный пример, содержащий данные для всестороннего тестирования алгоритма.
- Процесс алгоритмизации заключается в разработке совокупности конкретных действий – операций.
Этапы алгоритмизации
- Разбиение – разбиение общей задачи на элементарные подзадачи, реализуемые какими-либо инструментальными средствами СУБД.
- Разработка блок-схемы задачи.
- Конкретизация и формализация выполнения каждой подзадачи, определение ее входных и выходных данных, описание ее алгоритма.
Способы формального описания алгоритма
- Словесный – последовательность действий записывается на естественном языке.
- Графический – последовательность действий записывается функционально- технологической схемой и блок-схемой алгоритма.
Графический способ отличается наглядностью, простотой восприятия. Функционально-технологическая схема отражает технологию преобразования входных данных в выходные и общий алгоритм такого преобразования. На блок-схеме каждое действие алгоритма описывается более детально и отображается определенным графическим символом. Внутри графического символа дается его краткое описание.
Важный этап – декомпозиция задачи на подзадачи, легко реализуемые одним из средств СУБД (например, запросом, отчетом):
При разработке функционально-технологической схемы конкретизируется содержание процесса, его алгоритм, а также определяется состав и структура входных и выходных данных.
Общий вид функционально-технологической схемы подзадачи:
Завершающий этап создания приложения пользователя – конструирование приложения пользователя, объединяющего всю технологию обработки данных предметной области, которая включает загрузку, ведение БД и решение всего комплекса задач.
Основы создания макросов
Язык макросов является языком программирования, который позволяет реализовать задачи пользователя, выполняя необходимые действия над объектами Access и их элементами.
Макрос – это программа, состоящая из последовательности макрокоманд.
Макрокоманда – инструкция, ориентированная на выполнение определенного действия.
Пример: макрокомандой можно открыть форму, отчет, напечатать отчет, запустить на выполнение запрос, применить фильтр, присвоить значение, создать меню для формы или отчета.
Язык макросов обеспечивает возможность выполнения большинства задач, не прибегая к программированию на VBA.
Макросы обеспечивают набор методов обработки объектов.
Макросы взаимодействуют с объектами на основе событий.
События наступают при выполнении определенных действий.
Конструирование макросов
- Осуществляется в диалоговом режиме и сводится к записи в окне макроса последовательности макрокоманд для которых задаются параметры.
- Каждому макросу присваивается имя.
- При выполнении макроса макрокоманды выполняются последовательно в порядке их расположения.
- Имеется возможность определять условия выполнения макрокоманды.
Выполнение макроса осуществляется:
- При его открытии.
- При наступлении некоторого события создание макроса.
Формирование макрокоманд в окне макроса
- Макрокоманды вводятся в одноименный столбец.
- В нижней части окна выводятся аргументы макрокоманды
- В строки столбца Примечания вводятся комментарии.
Формирование макросов с помощью мыши
Для включения в макрос макрокоманд достаточно перетащить с помощью мыши объект из окна БД в строку макрокоманды.
Формирование значений аргументов макрокоманды
Для формирования значений аргументов макрокоманды нужно перенести объект из окна БД в строку аргумента, для которого задается значение.
Пример: при переносе таблицы в строку аргумента Тип объекта макрокоманды Закрыть, аргумент получает значение Таблица. Аргумент Имя таблицы в качестве значения получает имя перетаскиваемой таблицы.
Создание группы макросов
Группа макросов создается как один макрос, в котором содержится несколько поименованных макросов, связанных с решением одной задачи или используемых при работе с одной формой.
- Вызвать столбец Имя Макроса.
- В ячейку столбца Имя макроса ввести имя одного макроса, затем записать макрокоманды, в нем выполняемые.
- Для ссылок на макросы, которые вошли в группу макросов, используется синтаксис:
[ИмяГруппыМакросов].[ИмяМакроса]
Вызов макроса из другого макроса
Если некоторый набор макрокоманд будет использоваться в нескольких макросах, то можно создать макрос, содержащий эти макрокоманды и вызывать его из других макросов.
Вызов макроса выполняется макрокомандой ЗапускМакроса. Ее аргументы:
- [Имя макроса]
- [Число повторов]
- [Условие повтора] — логическое выражение. При значении Ложь повторное выполнение вызванного макроса не производится и возобновляется выполнение вызывающего макроса.
Метод ЗапускМакроса позволяет организовать циклы в программах на языке макросов.
Microsoft
Access
– это не только набор таблиц, хранящих
взаимосвязанные данные, но и набор
средств для работы с данными базы, таких
как запросы, формы, отчеты, которые могут
быть названы объектами приложения. С
помощью кнопочных форм может быть
создана панель управления приложением,
обеспечивающего пользователя простой
доступ ко всем его функциям. Добиться
этого без использования средств
программирования практически невозможно.
Простейшим языком программирования и
является язык макросов. Его изучение
может рассматриваться как хороший
способ введения в программирование на
языке VBA.
Макрос
– программа, состоящая из последовательности
макрокоманд. Макрокоманда
—
это
инструкция, ориентированная на выполнение
определенного действия над объектами
Access
и их элементами. Например, макрокоманды
можно использовать для выполнения
следующих действий:
Для
открытия (или закрытия) любой таблицы,
запроса, формы или отчета в любом
доступном режиме;
Для выполнения запроса на выборку или
запроса на изменение;
Для выполнения действий в зависимости
от значений в базе данных, форме или
отчете;
Для запуска других макросов или процедур
VBA;
Для применения фильтра и запуска
приложений;
И многое другое.
Макросы
могут быть запущены непосредственно
из окна базы данных или окна макроса.
Если макрос зависит от события в форме
или отчете, его нужно связать с
соответствующим событием и запускать
при возникновении этого события.
Создание
простого макроса
Чтобы
создать простой макрос, нужно открыть
окно базы данных, перейти на вкладку
Макросы
и нажать кнопку Создать
.
При этом открывается окно нового макроса.
Верхняя
часть окна используется для определения
нового макроса, а нижняя предназначена
для ввода значений аргументов макрокоманд,
включенных в макрос. В начале в верхней
части присутствуют два столбца с
заголовками Макрокоманда
и Примечание
.
Можно увидеть все четыре столбца
(рис.13.1), нажав кнопки Имена
макросов
и Условие
на панели инструментов.
Макрокоманды,
составляющие макрос, вводятся в столбец
Макрокоманды
(рис.13.2). Для ввода макрокоманды можно
нажать в этом столбце кнопку раскрытия
списка макрокоманд и выбрать нужную. В
правой нижней части окна макроса
выводится краткая справка, содержание
которой зависит от положения курсора
в верхней части окна макроса.
В
языке макросов можно организовать
выполнение макрокоманды или набора
макрокоманд только при выполнении
некоторых условий. Условие задается с
помощью логических выражений и вводится
в строку макрокоманды в столбец Условие.
Использование
в макросах ссылок на объекты.
При
обработке данных в базе данных необходимо
уметь правильно ссылаться на эти данные.
Ссылки на формы, отчеты, их элементы
управления формируются по определенным
правилам.
Ссылаться
на объекты можно по имени, но нужно
учесть, что в Access
объекты объединяются в семейства. Формы
объединены в семейство Формы
(Forms),
отчеты – в семейство Отчеты
(Reports).
Поэтому ссылка на объект включает имя
семейства и, через восклицательный
знак, имя объекта. Например, для ссылки
на форму необходимо записать так:
Forms
![Товары].
Рис.
13.1.Окно нового макроса
Рис.1
3
.
2
.
Список макрокоманд в окне макроса
В
ссылке на элемент управления вслед за
именем объекта через восклицательный
знак записывается имя элемента управления,
заключенное в квадратные скобки.
Например, в форме КАФЕДРА ссылка на
элемент управления Надпись
с именем Название
записывается так: Forms
![КАФЕДРА]!
[Название].
Forms
![Имя
формы]! [Имя подчиненной формы].
Forms
![Элемент
подчиненной формы]
Структура
некоторых макрокоманд.
1.
Макрокоманда ОткрытьФорму
.
Позволяет открывать форму и отбирать
данные. Аргументы макрокоманды: Имя
формы
(из
списка выбрать имя), Режим
(форма, конструктор, просмотр и др.), Имя
фильтра
(имя
запроса на выбор данных), Условие
отбора
(условие на языке SQL)
и др.
2.
Макрокоманда Закрыть
.
Закрывает форму, отчет, запрос и т.д.
Аргументы макрокоманды: Тип
объекта
(форма, отчет, таблица и др), Имя
объекта
(Выбирается
из списка), Сохранение
(да, Нет, Подсказка)
3.
Макрокоманда ПрименитьФильтр
.
Отбирает данные в открытой форме.
Аргументы макрокоманды: Имя
фильтра
(имя
запроса на выборку), Условия
отбора
(выражение SQL
без слова WHERE).
4.
Макрокоманда ЗадатьЗначение
.
Проводит вычисления в элементах
управления форм, отчетов. Аргументы
макрокоманды: Элемент
(элемент управления типа Поле
),
Выражение
(Арифметическое выражение или значение).
5.
Макрокоманда Печать
.
Печатает открытую форму, отчет. Аргументы
макрокоманды: Распечатать
(Все, Фрагмент,
Страницы), Со
страницы
(Начальная страница печати), По
страницу
(Конечная страница печати), Разрешение
(качество печати: например, среднее),
Число копий
.
6.
Макрокоманда Выход
.
Осуществляет выход из Access.
Аргументы макрокоманды: Параметры
(Сохранить все, Подтверждение и др.).
Запуск
макроса:
—
из окна
макроса
— нажать кнопку Запуск
на панели инструментов;
—
из окна базы данных
— нажать на вкладку Макросы
,
установить курсор на имени макроса и
нажать кнопку Запуск
;
—
из любого окна
Access
—
следует
выполнить команды
Сервис
Макрос
Выполнить макрос
Указать имя макроса
ОК
—
автоматический запуск макроса при
открытии базы данных
— задать ему имя AutoExec
.
ПЛАН-КОНСПЕКТ УРОКА
НА ТЕМУ:
«
Работа с макросами
в
MS Access
.
Техника создания макроса
»
Выполнила
: Сумцова Л.С.,
преподаватель
Центра профессионально-
технического образования № 2
города Харькова
Харьков, 2016
Тема «Работа с макросами в
MS Access
. Техника создания макроса»
Цель:
изучить теоретический материал;
научиться создавать макросы с помощью Конструктора макросов;
развивать внимательность, аккуратность, усидчивость;
воспитывать информационную культуру учащихся.
Аннотация
Урок изучения новой темы. Учащиеся должны четко представлять, как создать макрос в
MS Access
с помощью Конструктора макросов. Ребята должны уяснить, когда удобнее создать макрос и пользоваться ним.
План
Организационный момент.
Изучение нового материала.
Определение макроса.
Макросы в MS Access
.
Конструктор макросов.
Создание кнопки для запуска макроса на стандартной панели инструментов. Удаление кнопки.
Итог урока.
Домашнее задание
Ход урока
1. Организационный момент, перекличка, выяснение причин отсутствия, назначение дежурных.
2. Актуализация опорных знаний.
Фронтальный опрос.
Определение отчета в
MS Access
Создание отчета как объекта базы данных – как?
Структура отчета в режиме Конструктора
Печать отчета
3. Изучение нового материала.
В этой статье описываются макросы, доступные в базах данных Access, и рассказывается, как они могут помочь вам экономить время, автоматизируя часто выполняемые задачи. В ней рассматриваются основы создания и использования макросов, а также упоминаются улучшения макросов в Access.
Что такое макрос?
Макрос в Access — это инструмент, позволяющий автоматизировать задачи и добавлять функции в формы, отчеты и элементы управления. Например, добавив в форму кнопку, вы можете связать ее событие OnClick
с макросом, включающим команды, которые должны выполняться при нажатии этой кнопки.
В Access можно рассматривать макросы как упрощенный язык программирования, код на котором создается в виде списка необходимых действий. Создавая макрос, вы выбираете каждое действие из раскрывающегося списка, а затем вводите для него необходимые сведения. С помощью макросов можно добавлять функции в формы, отчеты и элементы управления без необходимости писать код в модуле Visual Basic для приложений (VBA). В макросах доступно подмножество команд VBA, и большинство людей считают, что создать макрос легче, чем написать код VBA.
Предположим, вы хотите создать отчет непосредственно из одной из своих форм для ввода данных. Вы можете добавить в форму кнопку, а затем создать макрос, который открывает отчет. Макрос может быть либо автономным, т. е. отдельным объектом в базе данных, который связывается с событием OnClick
кнопки, либо внедренным непосредственно в событие OnClick
. В любом случае при нажатии кнопки макрос запускает и открывает отчет. Такие макросы обычно называют макросами пользовательского интерфейса.
Понятие макросов данных впервые появилось в Access 2010. С помощью макросов данных можно автоматизировать задачи и добавлять функции непосредственно в таблицы. Макросы данных и их действия вкладываются в определенные события таблиц, например добавление новой записи в таблицу.
Создать макрос можно с помощью конструктора макросов, который показан на приведенном ниже рисунке.
Примечание:
Начиная с Access 2010, интерфейс конструктора макросов был изменен, чтобы создавать и редактировать макросы Access, а также делиться ими было еще проще.
Чтобы открыть конструктор макросов пользовательского интерфейса, сделайте следующее:
На вкладке Создание
в группе Макросы и код
нажмите кнопку Макрос
.
Чтобы открыть конструктор макросов данных, сделайте следующее:
Откройте любую таблицу в режиме таблицы. На вкладке Таблица
в группах До событий
и После событий
выберите одну из команд событий, например До изменения
или После вставки
.
Чтобы узнать больше о конструкторе макросов и о том, как создавать и тестировать макросы пользовательского интерфейса и данных, см. связанные статьи в разделе См. также
в конце этой статьи.
Функции макросов в Access
В более ранних версиях Access многие популярные функции не удавалось выполнять без написания программного кода VBA. В текущих версиях Access были добавлены новые функции и действия макросов, избавляющие от необходимости в коде. Это упрощает добавление функций в базу данных и помогает защитить ее.
Внедренные макросы
Вы можете внедрять макросы в любые события, предоставляемые формой, отчетом или элементом управления. Внедренный макрос не отображается в области навигации. Он становится частью формы, отчета или элемента управления, в котором он был создан. Если создать копию формы, отчета или элемента управления, содержащего встроенные макросы, то эти макросы также будут присутствовать в копии.
Повышенная безопасность
Если кнопка Показать все действия
не выделена в конструкторе макросов, то для использования доступны только те действия макросов и аргументы RunCommand, для выполнения которых не требуется статус доверенной базы данных. Макрос, созданный с использованием этих действий, будет выполняться, только если база данных находится в отключенном режиме (когда выполнение VBA запрещено). Базам данных, которые содержат действия макросов, не включенные в список доверенных (или базам данных с кодом VBA), необходимо явно предоставлять статус доверенных.
Обработка ошибок и устранение неполадок
Access предоставляет действия макросов, включая OnError
(аналогично оператору «On Error» в VBA) и ClearMacroError
, позволяющие выполнять определенные действия, если во время работы макроса возникнет ошибка. Кроме того, действие макроса SingleStep
позволяет переходить в режим пошагового выполнения из любой точки макроса, чтобы поэтапно просматривать его работу.
Временные переменные
Три действия макросов (SetTempVar
, RemoveTempVar
и RemoveAllTempVars
) позволяют создавать и использовать временные переменные в макросах. Их можно использовать в условных выражениях, чтобы управлять выполняющимися макросами, передавать данные в отчеты или формы либо из них, а также при выполнении любой другой задачи, требующей временного хранилища для значения. Эти временные переменные также доступны в VBA, поэтому с их помощью также можно передавать данные в модули VBA и из них.
Дополнительные сведения о действиях макросов
Во время работы в конструкторе макросов вы можете получить дополнительные сведения о действии или аргументе, щелкнув его и прочитав описание в поле в правом нижнем углу окна конструктора макросов. Кроме того, с каждым действием макроса связана статья справки. Чтобы узнать больше о действии, выберите его в списке действий и нажмите клавишу F1.
Записать макрос в Access как, например, в приложении Word не представляется возможным, но в Access можно создать макрос в окне Конструктора макросов или в окне редактора Visual Basic for Application (VBA).
Макросы в Access в основном создаются для обработки событий. Событие — это любое действие, которое распознается объектом и на которое можно определить отклик.
К событиям, которым можно назначить макросы относятся, например, нажатие кнопки для вывода на экран запроса, формы, отчета и т.д. Примером создания макроса может быть создание кнопки для вызова макроса «Открыть Запрос» в подчиненной кнопочной форме «Запросы» в базе данных Успеваемость_студентов.
Таким образом, основное назначение макросов — это создание удобного интерфейса приложения, в котором формы и отчеты открывались бы при нажатии кнопок в формах или на панелях инструментов. Чтобы при открытии приложения на экране отображалось не окно База данных, а главная кнопочная форма, которая создается с целью навигации по базе данных, т.е. в качестве главного меню БД.
В статье Макросы в БД Access 2003 рассмотрено создание макросов в окне Конструктора макросов, которое открывается командой Создать в окне базы данных на вкладке Макросы. Окно Конструктора макросов разделено по горизонтали на две части: панель описаний и панель аргументов. В панели описаний по умолчанию выводится два столбца: столбец для ввода макрокоманд и столбец для ввода примечаний. Макрокоманда — это инструкция, определяющая выполняемые действия в макросе.
В строке столбца Макрокоманда из раскрывающегося списка можно выбрать требуемую макрокоманду, а в строке столбца Примечание можно описать действие, выполняемое макрокомандой.
Рис. 1.
Панель аргументов макрокоманды, которая появляется в окне Конструктора макросов после ввода макрокоманды, позволяет выбрать требуемые аргументы, из списка который отображается для данной макрокоманды. Макросы могут содержать как набор макрокоманд, так группу макросов.
Для быстрого создания макроса в окне Конструктора макросов можно использовать следующую технологию. Первое, что необходимо выполнить, так это открыть базу данных и выбрать (выделить) требуемый объект в окне базы данных. Затем одним из способов (из панели инструментов, из строки меню или из окна базы данных) открыть окно Конструктора макросов и переместить с помощью мыши выбранный объект из окна базы данных в строку макрокоманда в окне Конструктора макросов.
Чтобы создать макрос, открывающий таблицу «Дисциплины», надо переместить с помощью мыши эту таблицу из окна БД в строку Макрокоманда окна Конструктора макросов. Кроме того, в аргументах макрокоманды можно установить Режим — Просмотр, Режим данных — Только чтение.
Рис. 2.
Аналогичным способом можно создавать макросы: Открыть форму, Открыть запрос, Открыть отчет или Запуск макроса.
Рис. 3.
Для запуска созданных макросов с панели инструментов необходимо создать кнопку на одной из панелей инструментов. Рассмотрим создание кнопки для запуска макроса Откр_запрос на стандартной панели инструментов, которая открывается в окне приложения по умолчанию. Сначала надо выбрать макрос в окне базы данных на вкладке макросы и перетащить его на панель инструментов, На панели инструментов появится кнопка Откр_запрос.
Рис. 4.
Для удаления кнопки с панели инструментов надо щелкнуть правой кнопкой на панели инструментов и из контекстного меню выбрать команду Настройка. В появившемся окне диалога Настройка на вкладке Команды в списке Категории выделить строку Все макросы. Перетащить левой кнопкой мыши кнопку с панели инструментов в список Команды окна диалога Настройка. В результате кнопка Откр_запрос будет удалена с панели инструментов.
Рис. 5.
С помощью макросов можно выполнить практически все действия над объектами Access из тех, которые были описаны в предыдущих главах.
Макрос в Access представляет собой структуру, состоящую из одной или нескольких макрокоманд, которые выполняются либо последовательно, либо в порядке, заданном определенными условиями. Набор макрокоманд в Access очень широк, с помощью макросов можно реализовать многое из того, что позволяют сделать процедуры на VBA. Каждая макрокоманда имеет определенное имя и, возможно, один или несколько аргументов, которые задаются пользователем. Например, при использовании макрокоманды ОткрытьФорму (OpenForm) в качестве аргументов необходимо задать, по крайней мере, имя открываемой формы и режим вывода ее на экран.
В табл. 11.1 содержится список макрокоманд Microsoft Access 2002, сгруппированных по категориям: работа с данными в формах и отчетах; выполнение команд, макросов, процедур и запросов; работа с объектами; импорт/экспорт данных и объектов и прочие. В категорию «Прочие» собраны все макрокоманды, которые позволяют влиять на интерфейс приложения.
Категория |
Назначение |
Макрокоманда |
Работа с данными в формах и отчетах | Отбор данных | Применить Фильтр (ApplyFilter) |
Перемещение по данным | СледующаяЗапись (FindNext) НайтиЗапись (FindRecord) КЭлементуУправления (GoToControl) НаСтраницу (GoToPage) НаЗапись (GoToRecord) | |
Обновление данных или экрана | Обновление (Requery) ПоказатьВсеЗаписи (ShowAllRecords) | |
Выполнение | Выполнение команды | Выполнить Команду (RunComraand) |
Выполнение макроса, процедуры или запроса | ЗапускМакроса (RunMacro) Залуск Программы (RunCode) ОткрытьЗапрос (OpenQuery) 3anycк 3anpoca SQL (RunSQL) | |
Выполнение другого приложения | Запуск Приложения (RunApp) | |
Прерывание выполнения | Отменить Событие (CancelEvent) Остановить ВсеМакросы (StopAllMacros) ОстановитьМакрос (StopMacro) | |
Выход из Microsoft Access | Выход (Quit) | |
Импорт/экспорт | Передача объектов Microsoft Access в другие приложения | Вывести В Формате (OutputTo) ОтправитьОбъект (SendObject) |
Преобразование формата данных | Преобразовать БазуДанных (Transfer Database) ПереносБазыДанныхSQL (TransferSQLDat abase) Преобразовать ЭлектроннуюТаблицу (Transfer Spreadsheet) ПреобразоватьТекст (TransferText) | |
Работа с объектами | Копирование, переименование и сохранение объекта | КопироватьОбъект (CopyObject) Копировать Файл БазыДанных (CopyDatabase File) Переименовать (Rename) Сохранить (Save) |
Прочие | Вывод на экран или скрытие встроенной или специальной панели инструментов Подача звукового сигнала | ПанельИнструментов (ShowToolbar) Сигнал (Веер) |
Таблица 11.1.
Макрокоманды Microsoft Access 2002
Как видно из этой таблицы, действия, которые могут быть выполнены с помощью макросов, очень разнообразны. Даже если вы не будете использовать макросы в своих приложениях, имеет смысл изучить эти макрокоманды, поскольку их можно использовать и в процедурах VBA, как будет показано далее (см. гл. 13).
По сравнению с предыдущей версией Access, в Microsoft Access 2002 появились три новые макрокоманды:
ПереносБазыДанныхSQL (TransferSQLDatabase) — переносит базу данных Microsoft SQL Server 7.0 и выше на другой сервер;
КопироватьФайлБазыДанных(CopyDatabaseFile) — выполняет копирование текущей базы данных Microsoft SQL Server 7.0 и выше, присоединенной к проекту Access;
ОткрытьФункцию (OpenFunction) — выполняет функцию, определенную пользователем, в проекте Access. Эта функция- представляет собой запрос, который, используя входные параметры, возвращает результаты так же, как и хранимая процедура.
Использование макросов оправдано тем, что их легко создавать, и для этого не нужно изучать синтаксис языка программирования. Как будет показано в следующем разделе, для создания макроса требуется знать лишь основные приемы работы в Microsoft Access и Windows, такие как перетаскивание объектов из окна База данных
(Database) в специальное окно — Конструктор макросов
(Macro Design), выбор действия из списка и ввод выражений в качестве аргументов макрокоманды. Поэтому, если очень не хочется изучать синтаксис языка VBA или это представляется слишком трудным, смело применяйте макросы, и вы получите достаточно функциональное приложение.
Как уже говорилось выше, основное назначение макросов — это создание удобного интерфейса приложения: чтобы формы и отчеты открывались при нажатии кнопок в форме или на панели инструментов или же привычным выбором команды меню; чтобы при открытии приложения пользователь видел на экране не окно База данных
(Database), наполненное множеством таблиц, запросов, форм и отчетов, а некую понятную форму, с помощью которой можно было бы сразу производить желаемые действия и т. д.
С помощью макросов можно создать удобные меню и панели инструментов для приложения, и чуть позже мы опишем, как это сделать.
Однако использование макросов имеет и некоторые недостатки, о которых здесь уместно сказать.
- Возможности макрокоманд ограничены по сравнению с возможностями языка VBA, поэтому в ряде случаев без программирования на VBA не обойтись, хотя сначала нужно быть уверенным, что эти дополнительные возможности действительно нужны. Язык VBA предоставляет более широкие возможности для работы с данными, позволяет использовать механизм программирования объектов для связи с другими приложениями, вызывать функции из библиотек динамической загрузки (DLL) Windows и создавать собственные специализированные функции.
- Макросы можно использовать практически везде, где применяются процедуры VBA, однако процедуры VBA, как правило, выполняются быстрее.
- Макросы являются объектами, существующими отдельно от форм и отчетов, в которых они используются, поэтому, когда этих объектов становится очень много, их поддержка достаточно трудоемка. Процедуры обработки событий VBA являются неотъемлемой частью форм и отчетов, и в этом есть свои преимущества. Например, при переносе форм и отчетов из одной базы данных в другую с ними автоматически переносятся связанные процедуры.
Тем не менее, как уже отмечалось, во многих случаях использование макросов вполне оправдано, т. к. это существенно упрощает и ускоряет разработку приложения. С помощью макросов можно создавать небольшие однопользовательские приложения, хотя при создании многопользовательских или клиент-серверных приложений, где скорость работы приложения критична, лучше применять VBA.
Подборка по базе: Антикризисное управление Тема 5.docx, 2 неделя физика 2 тема.docx, ПЗ тема Интервальный ряд.doc, Реферат по истории России . Тема_ Александр Васильевич Суворов и, Урок истории. Тема. Римская империя_ территория, управление..doc, Практическая работа №1 Тема_ «Особенности содержания обновленных, Практическая работа №1 Тема_ «Особенности содержания обновленных, Менеджмент тема 1.3.docx, Менеджмент тема 1.2.docx, МП Тема 3. Отработка техники дыхательной гимнастики.doc
Тема 1
Создание макросов
План лекции:
- Основы создания макросов
2. Конструирование макроса
3. Макрокоманды
1. Основы создания макросов
Язык макросов является языком программирования, который позволяет реализовать задачи пользователя, выполняя необходимые действия над объектами Access и их элементами.
Макрос — программа, состоящая из последовательности макрокоманд.
Макрокоманда — это инструкция, ориентированная на выполнение определённого действия.
С помощью макрокоманды можно:
- открыть форму
- открыть отчёт
- напечатать отчёт
- запустить запрос
- применить фильтр
- создать своё меню для формы или отчёта и т.д.
2. Конструирование макроса
Создание макросов осуществляется в диалоговом режиме и сводится к записи
в окне макроса последовательности макрокоманд, для которых задаются параметры.
- Линейка Меню, вкладка Создание, область Другие, Макрос;
- В окне Аргументы макрокоманды задать значения аргументов;
- Сохранить макрос: нажать кнопку Выполнить, ввести имя макроса, OK;
2. В столбце Макрокоманда выбрать макрокоманду из списка.
Если нужной макрокоманды нет, нажать Показать все действия;
4. В столбце Примечание можно ввести необязательный комментарий
(обычно описывают результат выполнения макроса);
6. Назначить макрос какому-либо событию.
3. Макрокоманды
Макрокоманда «Восстановить»
Восстанавливает прежние размеры развернутого или свернутого окна. Не требует аргументов.
Эта макрокоманда применяется к выделенному объекту.
- Свернутый в значок объект необходимо сначала выделить с помощью
- Для изменения положения и размеров восстановленного окна
макрокоманды «ВыделитьОбъект» (SelectObject), а затем восстановить
с помощью макрокоманды «Восстановить» (Restore).
используют макрокоманду «СдвигРазмер» (MoveSize).
Вызов макрокоманды «Восстановить» (Restore) эквивалентен нажатию кнопки восстановления размеров окна в правом верхнем углу окна или выбору команды Восстановить в оконном меню.
Макрокоманда «ОткрытьТаблицу»
Открывает таблицу в режиме таблицы, в режиме конструктора или в режиме предварительного просмотра.
Аргумент | Описание |
Имя таблицы | Имя таблицы, которую следует открыть. Данный аргумент является обязательным. |
Режим | Режим открытия таблицы.
Допустимые Значения: «Таблица» (используется по умолчанию); «Конструктор»; «Просмотр» ; «Сводная таблица»; «Сводная диаграмма». |
Режим данных | Режим ввода данных в таблицу. Этот аргумент применим только к таблицам, открываемым в режиме таблицы.Допустимые Значения:
существующие записи) используется по умолчанию) |
Макрокоманда «ВывестиВФормате»
Позволяет вывести данные из указанного объекта базы данных Microsoft Office Access 2007 (таблицы, формы, отчета, модуля или страницы доступа к данным) в различных выходных форматах.
Аргумент | Описание |
Тип объекта | Тип объекта, содержащего предназначенные для вывода данные. В построителе макросов в разделе Аргументы макрокоманды в поле Тип объекта доступны значения Таблица (выбор таблицы в режиме таблицы), Запрос (выбор запроса в режиме таблицы), Форма (выбор формы или формы в режиме таблицы), Отчет, Модуль, Представление, Сохраненная процедура и Функция. Макрос недоступен для вывода. Если требуется вывести активный объект, укажите в данном аргументе его тип, не указывая значение аргумента Имя объекта. Это обязательный аргумент. По умолчанию принимается значение Таблица. |
Имя объекта | Имя объекта, содержащего предназначенные для вывода данные. В поле Имя объекта отображаются все содержащиеся в базе данных объекты с типом, определенным в аргументе Тип объекта |
Формат вывода | Формат, в котором следует вывести данные. Если этот аргумент оставлен пустым, Access запросит формат вывода. |
Имя файла | Имя файла, в который нужно выполнить вывод данных, включающее полный путь. Можно указать стандартное расширение файла для формата, выбранного в аргументе Имя файла, однако это необязательно. Если оставить аргумент Имя файла пустым, Access запросит имя файла. |
Автозагрузка | Определяет, следует ли запускать соответствующее программное обеспечение непосредственно после выполнения макрокоманды ВывестиВФормате с загрузкой в него файла, заданного в аргументе Имя файла. По умолчанию используется значение «Нет». |
Макрокоманда «ВыводНаЭкран»
Определяет режим вывода на экран результатов выполнения текущих операций. Например, эта макрокоманда позволяет вывести на экран или скрыть промежуточные результаты выполнения макроса.
Аргумент | Описание |
Включить вывод | Допустимые Значения:
«Да» (включает вывод на экран; используется по умолчанию); «Нет» (отключает вывод). Текст строки состояния — текст, отображаемый в строке состояния, когда вывод на экран отключен. Например строка состояния может отображать сообщение «Макрос выполняется». |
Во время выполнения макроса на экране часто отображается информация, без которой вполне можно обойтись. Если аргумент «Включить вывод» имеет значение «Нет», макрос выполняется без обновления экрана. По завершении выполнения макроса MS ACCESS автоматически включает вывод на экран и обновляет текущее окно. Значение «Нет» аргумента «Включить вывод» не влияет на результат выполнения макроса.
Макрокоманда «ВыделитьОбъект»
Выделяет указанный объект базы данных.
Аргумент | Описание |
Тип объекта | Тип объекта, который следует выделить. Доступны значения: Таблица, Запрос, Форма, Отчет, Макрос, Модуль, Страница доступа к данным, Представление, Схема, Сохраненная процедура и Функция. Данный аргумент является обязательным. |
Имя объекта | Имя объекта, который следует выделить.
Данный аргумент является обязательным. |
В области переходов | Определяет, будет ли объект выбран в области переходов Microsoft Office Access 2007. Выберите: — Да (выбрать объект в области переходов), или — Нет (не выбирать объект в области переходов. Значение по умолчанию). |
Макрокоманда «Выход»
Макрокоманда Выход позволяет выйти из приложения Microsoft Office Access 2007. Кроме того, в макрокоманде Выход можно указать один из способов сохранения объектов базы данных перед завершением работы Access.
Аргумент | Описание |
Параметры | Указывает, что должно происходить с несохраненными объектами при завершении работы с MS Access. Допустимые Значения: — «Подтверждение» (для каждого несохраненного объекта выводится окно диалога, в котором следует подтвердить сохранение); — «Сохранить все» (все несохраненные объекты сохраняются автоматически; используется по умолчанию); — «Выход» (выход из Microsoft Access без сохранения объектов). |
Макрокоманды, следующие после макрокоманды «Выход», не выполняются. Эту макрокоманду используют для быстрого завершения работы с MS ACCESS, связывая ее с командой специального меню или кнопкой в форме.
Макрокоманда «Закрыть»
Закрывает указанное окно MS ACCESS или текущее окно (по умолчанию).
Аргумент | Описание |
Тип объекта | Тип объекта, окно которого следует закрыть.
Допустимые Значения: Таблица, Запрос, Форма, Отчет, Макрос, Модуль. Для того чтобы указать текущее окно, оставьте значение этого аргумента пустым. |
Имя объекта | Имя объекта, который следует закрыть. Если значение аргумента «Тип объекта» оставлено пустым, следует оставить пустым и значение данного аргумента. |
Сохранить | Значение по умолчанию.
Определяет сохранение изменений объекта при его закрытии.
отменить сохранение объекта. |
Макрокоманда «ЗапускПриложения»
Запускает из MS Access приложение MS Windows или MS-DOS (например, MS Excel, MS Word для Windows или MS PowerPoint).
Например, эта макрокоманда позволяет выполнить вставку или связывание электронной таблицы MS Excel в базу данных MS Access.
Аргумент | Описание |
Командная строка | Командная строка, используемая для запуска приложения; может содержать любые необходимые параметры. Данный аргумент является обязательным |
Макрокоманда «ДобавитьМеню»
С помощью макрокоманды ДобавитьМеню можно создать:
- Пользовательские меню в группе Команды меню на вкладке Надстройки для определенных форм или отчетов или базы данных в целом;
- Пользовательское контекстное меню для формы, элемента управления, формы или для отчета. Пользовательское контекстное меню заменяет встроенное контекстное меню в формах, элементах управления форм и отчетах;
- Глобальное контекстное меню, заменяющее встроенные контекстные меню для полей в таблицах и запросах в режиме таблицы, форм и отчетов, за исключением добавленных пользовательских контекстных меню в формах, элементах управления форм и отчетах
Аргумент | Описание |
Имя меню | Имя раскрывающегося меню, добавляемого в группу Команды меню на вкладке Надстройки. Введите имя меню в поле Название меню в разделе Аргументы макрокоманды окна построителя макросов. Этот аргумент является обязательным для меню на вкладке Надстройки. |
Имя макроса меню | Имя группы макросов, которая содержит макросы для команд меню. Этот аргумент является обязательным. |
Текст строки состояния | Текст, который отображается в строке состояния при выборе меню. |