Программирование в Outlook


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

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

Для читателя, первый раз столкнувшегося с разработкой каких-либо форм и программированием, возможно, будет трудным восприятие излагаемого ниже материала. Но как говориться — дорогу осилит идущий!
Не бойтесь, если какой-либо факт вызовет с первого раза непонимание или какая-либо возможность будет описана не полностью, поскольку вопрос разработки форм и программирования настолько широк, что заслуживает отдельной книги. Здесь же дается всего лишь попытка в доступной, понятной и как можно более полной форме рассмотреть основы программирования в Outlook. Надеемся, что полученные знания помогут вам в разработке собственных небольших приложений с достаточной степенью легкости.
В заключительной части книги будут рассмотрены следующие аспекты программирования в среде Outlook:

  • Разработка форм. В данной главе будут изложены основы разработки форм Outlook, использования полей пользователя и элементов управления.
  • Основы VBA. Приводится почти полное описание языка программирования Visual Basic for Application (VBA), посредством которого можно записывать макросы и создавать пользовательские приложения Outlook.
  • Объектная модель Outlook 2002. В настоящей главе описывается иерархия объектов Outlook 2010. Кроме того, рассматриваются основные классы, используемые при реализации приложений Outlook.
  • Разработка приложения. В последней главе будет приводится пример разработки простого пользовательского приложения Outlook, на котором будет продемонстрировано использование классов объектной модели Outlook 2010 и VBA.

 

Разработка форм
Рассматривая ранее работу с элементами Outlook, мы постоянно встречались с заполнением форм всевозможной природы (сообщение, встреча, задача и т. д.). Использование форм является стандартным электронным средством сбора и классификации данных. Простой графический интерфейс (поля, списки, кнопки) и подключенные к форме специальные команды дают возможность пользователю легко и непринужденно вносить в форму данные.
Но как быть в случае, если форма не содержит необходимого для вас поля? Существует множество некорректных способов выхода из подобной ситуации, например значения для несуществующего поля заносить в существующее, но неиспользуемое поле (постоянно держа в голове, что же действительно в нем хранится). Еще одним из способов является вложение в элемент файла с дополнительной информацией по этому полю и т. д. Поверьте опыту писателя, который видел множество примеров глумления над Outlook, в то время как решение этих проблем лежит на поверхности, а именно заключается в разработке собственной формы, содержащей все требуемые поля.
Чтобы не быть голословным, давайте рассмотрим разработку формы пользователя на конкретном примере. Допустим, что сотрудник отдела кадров издательства "БХВ-Петербург", работая с Microsoft Outlook, сталкивается с проблемой, что в форме Контакт нет полей, отображающих специфику контакта-автора, а именно:

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

 

Создание формы
Для создания формы необходимо перейти в режим конструктора форм.
Переход в режим конструктора форм
> Сервис > Формы > Конструктор форм…
Папки Библиотека стандартных форм
Формы Контакт
Открыть
Однако попутно необходимо сделать пару замечаний.

  • Пользователь может создавать собственные формы только на основе стандартных форм Outlook, добавляя или удаляя поля и команды.
  • Outlook имеет восемь стандартных форм, которые показаны на. Я буду рассматривать создание пользовательской формы на основе формы Контакт. Создание форм на основе других стандартных прототипов будет аналогичным.

После открытия формы Контакт (Contact) в режиме конструктора пользователю представляется ее стандартный вид с добавленными специальными вкладками. Имена появившихся вкладок заключены в скобки, это означает, что они появляются только в режиме конструктора. Вкладки (2)—(6) являются пользовательскими, т. е. предназначены для размещения на них дополнительных элементов управления. Вкладки (Свойства) и (Команды) имеют специальное назначение.

Как было сказано выше, форму можно изменять, удаляя или добавляя новые поля и/или элементы управления. Для просмотра всех полей данной формы перейдите на вкладку Все поля (All Fields) и выберите значение Все поля контакта (All Contact Fields) в раскрывающемся списке Группы полей для выбора (Select From).