Использование VBA для связи приложений
При работе в офисных приложениях часто приходится формировать документы в текстовом редакторе Word, куда необходимо переносит информацию, хранящуюся в базе данных. Технология автоматизации позволяет управлять этим процессом на программном уровне. Рассмотрим бизнес-ситуацию. Клиентам необходимо получить дополнительные сведения к договору (справку) об оказании туристических услуг (с указанием фамилии и месте путешествия). Вид справки представлен на рис. 4.47.
Рис. 4.47. Вид справки
Места подчеркивания вставляется информация, которая хранится в базе данных «Туристическая фирма». Перенос информации вручную неэффективен, поэтому необходимо автоматизировать этот процесс. Рекомендации по выполнению: 1. Создать документ Word подобного содержания и вида (рис. 4.48.), в места подчеркивания вставить закладки с понятными именами (добавляются в диалоговом окне Закладка), а сам документ сохранить под именем Дополнительные сведения.doc.
Рис. 4.48. Документ справки с закладками
2. Разработать сложную форму (рис. 4.49), с подчиненными подформами, которые обеспечат удобный просмотр структурированной информации из базы данных.
Рис. 4.49. Сложная форма
Работа с такой формой позволяет выбирать всю необходимую информацию для справки. Форма разрабатывается Мастером, в котором вначале загружаются все поля из таблицы Клиент, затем все поля из таблицы Туры. Далее пошагово выбираем подчиненный вид вложенной формы, внешний вид табличный и стиль Стандартный. Соглашаемся с именами форм, задаваемыми по умолчанию и открываем форму для просмотра и ввода данных. Для табличной формы Туры можно изменить ширину полей непосредственно в режиме работы с формой. Создадим на форме кнопку, нажатие на которую обеспечит доступ к файлу Дополнительные сведения.doc., вставив при этом поля текущей записи из формы в места закладок. Перейдем в режим Конструктора для главной формы Клиент, выберем инструмент Кнопка(отключив Мастер!!!) и начертим кнопку в свободной области формы. Сменим название кнопки: оно должно соответствовать действию – Формирование справки. Двойным щелчком по созданной кнопке перейдем в окно выбора обработчика событий, выберем Нажатие кнопки, вызовем в Построителе режим создания Программы и перейдем в редактор VBA, где появится «заглушка» программы-обработчика события нажатия на эту кнопку (Click), внутрь которой вставьте приведенный ниже код (рис.4.50). Обратите внимание, какие длинные конструкции определяют элементы управления главной и подчиненной форм.
Рис. 4.50. Построение программы для обработки события нажатия на кнопку (Click)
В приведенном ниже коде (рис.4.51) организован доступ к файлу с закладками, которые по очереди выделяются и вместо них из полей сложной формы методом TypeText вводятся значения активной записи, на которую указывает маркер. Используются коллекции для работы с объектами Bookmarks – закладки и Forms– формы.
Рис. 4.51. Код программы с комментариями
В программе также используется метод Select, который позволяет получить новый объект выделения – Selection, к которому применяются следующие методы: – GoTo – переход к новому выделению, задаваемому параметром Name; – TypeText с параметром Text, которому присваиваются цепочки, указывающие на вставляемый элемент из формы или подформы. Внимание!!! Во-первых, не забудьте, что в коде наш файл справки расположен в корневой папке диска D: Внесите необходимые корректировки, если вы используете другое место размещения документа. Во-вторых, в редакторе VBA необходимо подключить ссылку на библиотеку объектов MS Word. Для этого в меню нажать пункт Tools–References… . В списке найти и установить флажок для строки Microsoft Word Object Library (рис.4.52).
Рис. 4.52. Подключение библиотеки объектов MS Word
Теперь вернемся в MS Access, перейдем в режим работы с формой и протестируем результаты автоматизации, нажав кнопку Формирование справки (рис. 4.53).
Рис. 4.53. Формирование справки для выбранного клиента и результат выполнения
Популярное: Как выбрать специалиста по управлению гостиницей: Понятно, что управление гостиницей невозможно без специальных знаний. Соответственно, важна квалификация... Почему двоичная система счисления так распространена?: Каждая цифра должна быть как-то представлена на физическом носителе... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (493)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |