- •Л.Н. Лядова, н.В. Фролова, в.В. Ланин, е.Б. Замятина, м.А. Плаксин, б.А. Ермолаев
- •Часть 2. Основы офисного программирования
- •Оглавление
- •Глава 6. Использование Win32 api 113
- •Глава 7. Использование шаблонов и надстроек 118
- •Глава 8. Разработка приложений с помощью Excel 122
- •Глава 9. Разработка приложений с помощью Word 223
- •Глава 10. Использование Automation при интегрировании компонентов Microsoft Office 256
- •Глава 11. Организация доступа к внешним данным 279
- •Глава 12. Общие рекомендации по разработке приложений 297
- •Глава 13. Разработка справочной системы 298
- •Глава 14. Дополнительные рекомендации 301
- •Пояснительная записка
- •Уровень предварительной подготовки слушателей
- •Образовательные цели и задачи
- •Знания и навыки, получаемые в ходе изучения курса
- •Содержание занятий
- •Вопросы для самостоятельного изучения
- •Содержание лабораторных работ
- •Итоговые работы
- •Введение
- •Глава 1.Общая характеристика возможностей vba
- •Глава 2.Основные принципы разработки приложений
- •Глава 3.Основные правила разработки интерфейса
- •Глава 4.Visual Basic для приложений
- •Глава 5.Введение в язык и редактор Visual Basic
- •5.1.Окно Редактора Visual Basic
- •5.2.Основные правила записи программ на vba
- •5.2.1. Описания в программах на языке vba
- •5.2.2. Структуризация программ vba и правила записи кода процедур
- •5.2.3. Использование параметров
- •5.2.4. Типы данных vba
- •5.2.5. Описания переменных
- •5.2.6. Объекты в программах на vba и объектные переменные
- •5.2.7. Создание объектов пользователя
- •5.2.8. Описание и использование констант
- •5.2.9. Массивы в vba
- •5.2.10. Описание типов данных пользователя
- •5.2.11. Запись выражений на vba
- •5.2.12. Рекурсивные вычисления
- •5.2.13. Процедуры-подпрограммы
- •5.2.14. Процедуры-функции
- •5.2.15. Процедуры-свойства
- •5.2.16. Создание процедур
- •5.2.17. Управляющие структуры vba и события
- •5.3.Запуск программ
- •5.4.Отладка программ
- •5.5.Обработка ошибок
- •5.6.Преобразования типов
- •5.7.Функции для работы с датами и временем
- •5.8.Управление файлами
- •5.9.Функции проверки
- •5.10.Функции работы со строками
- •5.11.Взаимодействие с пользователем
- •5.12.Пользовательские формы и диалоговые окна
- •5.13.Создание пользовательских меню и панелей инструментов
- •5.14.Разработка контекстного меню
- •5.15.Открытие проектов, экспорт и импорт
- •Глава 6.Использование Win32 api
- •Глава 7.Использование шаблонов и надстроек
- •Глава 8.Разработка приложений с помощью Excel
- •8.1.Иерархия объектов Excel
- •8.2.Обзор основных объектов Excel
- •8.2.1. Объект Application
- •8.2.2. Объект Workbook
- •8.2.3. Объект WorkSheet
- •8.2.4. Объект Range
- •8.2.5. Графические объекты
- •8.2.6. Элементы управления и обработка событий
- •8.3.Представление данных и вычисления в таблицах Excel
- •8.3.1. Ссылки на ячейки рабочих листов Excel
- •8.3.2. Работа с формулами
- •8.3.3. Использование функций
- •8.3.4. Создание пользовательских функций рабочего листа
- •8.3.5. Массивы Excel
- •8.3.6. Определение связей между таблицами
- •8.3.7. Консолидация данных
- •8.3.8. Форматирование данных в таблицах
- •8.4.Анализ данных и подведение итогов
- •8.4.1. Создание сводных таблиц
- •8.4.2. Подведение промежуточных итогов
- •8.4.3. Определение частичных сумм
- •8.4.4. Создание диаграмм
- •8.4.5. Работа со структурой данных
- •8.5.Подбор параметров и поиск решения
- •8.6.Использование сценариев
- •8.7.Поиск и отбор данных в таблицах Excel
- •8.7.1. Использование автофильтра
- •8.7.2. Работа с расширенным фильтром
- •8.7.3. Поиск данных по подписям строк и столбцов
- •8.8.Упорядочение данных в таблицах
- •8.9.Защита приложений Excel
- •8.9.1. Защита от ошибок при вводе данных
- •8.9.2. Защита данных от несанкционированного доступа
- •Глава 9.Разработка приложений с помощью Word
- •9.1.Модель объектов Word
- •9.1.1. Объект Document
- •9.1.2. Другие дочерние объекты приложения Word
- •9.2.Работа с полями
- •9.3.Переменные документа
- •9.4.Использование формул в документах Word
- •9.5.Использование элементов управления в документах Word
- •9.6.Создание шаблонов документов на основе таблиц
- •9.7.Защита документов Word и кода
- •Глава 10.Использование Automation при интегрировании компонентов Microsoft Office
- •10.1.Технология ActiveX
- •10.2.Компонентная модель объектов, внедрение и связывание
- •10.3.Создание объектов Automation
- •10.4.Получение доступа к объекту
- •10.5.Пример вычислений в Access с помощью Excel
- •10.6.Управление связанными и внедренными объектами с помощью программного кода
- •Глава 11.Организация доступа к внешним данным
- •11.1.Доступ к данным из клиентских приложений
- •11.2.Интерфейс odbc
- •11.3.Использование dao для доступа к данным
- •11.3.1. Модель объектов dao
- •11.3.2. Создание рабочей области и открытие источника данных
- •11.3.3. Исследование структуры таблиц бд
- •11.3.4. Операции над данными
- •11.4.Интеграция данных и работа в сети
- •11.4.1. Доступ к данным Excel из субд Access
- •11.5.Выбор метода доступа к данным
- •Глава 12.Общие рекомендации по разработке приложений
- •Глава 13.Разработка справочной системы
- •13.1.Использование всплывающих подсказок
- •13.2.Контекстная справка «Что это такое?»
- •13.3.Подготовка файла справки
- •Глава 14.Дополнительные рекомендации Установка приложения
- •14.1.Повышение эффективности работы приложения
- •Приложение 1. Система автоматизации подготовки документов на основе пакета Microsoft Office
- •Требования к системе Office case
- •Интеллектуальность документа
- •Однократный ввод данных и их совместное использование
- •Дружественный интерфейс – «ориентация на человека»
- •Мобильность
- •Независимость от версии Microsoft Office
- •Поддержка языка разметки документов xml
- •Общий сценарий использования
- •Структура Office case
- •Структура скрытого раздела документа
- •В. Таблица ограничений
- •Подсистемы программного проекта документа Менеджер закладок
- •Менеджер классификаторов
- •Подсистема управления интерфейсом пользователя
- •Подсистема контроля данных
- •Подсистема информационного обмена
- •Дизайнер системы документов
- •Редактор классификаторов
- •Редактор правил
- •Редактор закладок
- •Редактор блоков данных
- •Пример применения Office case Постановка задачи
- •Реализация Документы «Подсистемы автоматизации подготовки отчетов»
- •Требования к квалификации пользователей
- •Установка приложения и подготовка к работе
- •Интерфейс первичных документов
- •Интерфейс сводных документов
- •Приложение 2. Автоматизированное рабочее место «Оператор автозаправочной станции»
- •Разработка структуры рабочей книги
- •Настройка пользовательского интерфейса
- •Разработка экранных форм
- •Приложение 3. Автоматизация заполнения бланка с помощью программы текстового процессора Word Постановка задачи
- •Разработка документа
- •Разработка экранной формы
- •Список литературы
13.3.Подготовка файла справки
Файл справки может быть подготовлен с помощью любой утилиты, предназначенной для разработки справочников, например: RoboHelp, Doc-To-Help, Visual Help, Help Magician, ForeHelp, Microsoft Help Workshop и др.
Общая схема подготовки файла справки включает следующие шаги:
1. Подготовка текстового документа (или нескольких текстовых документов), содержащих текст справочника и сохранение его в заданном формате (обычно – RTF).
2. Разработка проекта для преобразования созданных файлов в справочник (создание содержания, редактирование ссылок и т.д.) и его компиляция в HLP-файл с помощью специальной программы.
Для облегчения этой работы в состав Instant Help включен специальный шаблон InstHelp.dot, который позволяет разрабатывать справочник в среде MS Word. В этом шаблоне содержатся определения всех необходимых стилей, используемых для разметки файла справки (новых тем, переходов и т.п.), макросы и дополнения к меню и панелям инструментов.
Файл с текстом справочника создается на основе указанного шаблона, а генератор справки, конвертирующий созданных файл в справочник, запускается с помощью команды меню или специализированной кнопки на панели инструментов. Для компиляции файла используется MS Help Workshop.
Глава 14.Дополнительные рекомендации Установка приложения
При разработке приложений пользователь всегда должен предусматривать возможность установки приложения неквалифицированным пользователем и возможность последующих обновлений созданного приложения. Поэтому для облегчения решения этих задач необходимо разработать специальные программы установки приложений (в том числе и приложений, созданных на основе MS Office).
В общем случае программа установки должна выполнять следующие действия:
определять папки для установки приложения и проверять возможность установки приложения в указанные папки,
давать возможность выбора файлов для установки (если это необходимо, т.е. если, например, у пользователя есть выбор вариантов установки),
проверять наличие нужных для установки файлов на дистрибутиве и контролировать результаты их копирования в указанные папки,
обеспечивать возможность «отката», т.е. отказа от выполнения установки с возвратом к исходному состоянию (например, если выбранные для установки папки уже содержат файлы с такими же именами, произошла ошибка при копировании очередного файла и т.п.),
сохранять параметры приложения в Реестре системы, создав для этого специальный подраздел в разделе Реестра HKEY_CURRENT_USER\Software;
обеспечить возможность деинсталляции/обновления приложения (создать файл с информацией об установке, о размещении файлов и папок, изменениях, внесенных в стандартные папки, в реестр и т.п.) с восстановлением/обновлением информации в Реестре.
Выполнение этих требований облегчит работу с приложением, его установку и модификацию.
14.1.Повышение эффективности работы приложения
Для облегчения работы пользователя с приложением при его разработке необходимо решить следующие задачи:
обрабатывать ошибки (инструкция On Error и специальные средства приложений, например, проверка вводимых значений в Excel), локализуя их, сообщая пользователю о том, какая ошибка произошла, и что он должен предпринять;
отключать обновление (перерисовку) экрана при выполнении промежуточных операций (открытия файлов, обновления данных в таблицах и т.п.), что повысит скорость выполнения программы (свойства ScreenUpdating, Visible);
закрывать все файлы, открытые, но уже не используемые приложением, причем принудительно сохранять при закрытии файлы, которые должны быть сохранены, и не сохранять файлы, которые не должны сохраняться (используя метод SaveAs и свойство Saved);
возвращать фокус в исходную точку (для этого необходимо запоминать текущее положение курсора, точки вставки, рамки выделения и т.п. при запуске команды);
восстанавливать в качестве текущих диск и папку, которые были текущими до запуска приложения;
восстанавливать параметры приложения и установки пользователя (панели инструментов и меню, масштаб, состояние главного окна и дочерних окон, режим отображения документов, установки, доступные через команду Параметры меню Сервис).
Выполнение этих требований не только облегчит работу пользователя с приложением, но и позволит сохранить привычную для пользователя среду.
