Разработка приложений в среде Microsoft Office
13.1. Visual Basic for Applications
Язык Visual Basic for Applications (Visual Basic для приложений, сокращенно VBA) является основным инструментом офисного программирования, т.е. программирования в пакетах MS Office. VBA – реализация языка программирования Visual Basic, встроенная в линейку продуктов Microsoft Office, а также во многие программные пакеты, такие как AutoCAD, WordPerfect и другие.
Язык Basic был разработан как средство обучения и работы непрофессиональных программистов. Его назначение ясно из названия, которое является сокращением от Beginner's All-purpose Symbolic Instruction Code (многофункциональный язык символических инструкций для начинающих). Популярность этому языку придала его простота. Язык Basic поставлялся вместе с компьютерами и рекомендовался для начинающих программистов.
Microsoft Visual Basic (VB) – популярный инструмент разработки приложений в среде Windows, является очень удобным средством для решения небольших задач и для обучения непрограммистов, которые хотели бы создавать собственные приложения.
В MS Office 97 впервые была реализована общая среда разработки VBA 5.0 для решения задач как по автоматизации операций, так и по созданию законченных приложений. VBA 5.0 использовала тот же самый языковый механизм и среду разработки, что и универсальная система VB 5.0. В состав новых версий MS Office включаются и новые версии VBA, которые применяются в настоящее время во многих офисных пакетах. Язык VBA, являясь унифицированным языком программирования для всех приложений, упрощает создание программных решений. VBA заменил прежние специализированные языки разработки, например, WordBasic, и расширил их функциональные возможности.
Microsoft позиционирует сегодня свой пакет MS Office не просто как набор прикладных программ, а как комплексную платформу для создания бизнес-приложений, ориентированных на широкий круг задач конечных пользователей.
Полнофункциональная среда разработки одинакова вне зависимости от приложений и включает в себя средства отладки, редактирования программного кода, проверку синтаксиса и просмотра объектов приложений. Обладая всеми чертами современных объектно-ориентированных языков, VBA поддерживает механизм визуального проектирования форм, позволяет включать в диалоговые окна и внедрять в документы элементы управления на базе ActiveX.
Если процедуры VBA используют специфические объекты приложения, то они могут выполняться только в рамках приложения, для которого они написаны. Программные решения могут объединять одновременно несколько приложений, например, можно программно создать документ MS Word на основе данных рабочей книги MS Excel.
13.2. Преимущества и недостатки разработки приложений в офисной среде
К достоинствам VBA можно отнести следующие:
- относительная простота разработки. Несмотря на свою мощность и гибкость, этот язык очень прост для изучения. Пользователи- непрограммисты могут управлять своим документом, сами создавать приложения "под себя";
- язык встроен в офисную среду. Пакет MS Office широко распространен. Миллионы людей по всему миру используют приложенияMS Office в своей повседневной работе и им проще работать с уже известной технологией. Любое дополнительное решение в этой среде не вызывает серьезных затрат на обучение и поддержку;
- сокращение времени и затрат при использовании MS Office в качестве платформы для разработки объясняется тем, что большинство необходимых функций уже реализовано в офисных приложениях. Это форматирование текстов, выполнение разного рода расчетов, поиск и отбор данных, построение диаграмм и т.д. Разработчик включает готовые компоненты во вновь создаваемые приложения, может повторно задействовать разработанные программы в нескольких проектах, основанных на одном или на разных офисных приложениях;
- среда MS Office обеспечивает интегрированные решения. Так как все офисные приложения тесно интегрированы и имеют единый интерфейс, решения, создаваемые с помощью компонентов MS Office, будут иметь похожую структуру и включать все средства обработки документов, необходимые для работы конечного пользователя.
Основными недостатками VBA являются:
- невозможность создания автономного приложения и открытость
- программ для случайного изменения;
- реализована только парольная защита модулей проекта;
- наличие процедур VBA может восприниматься как макровирусы.
Вследствие широкого распространения макровирусов в офисных пакетах предусмотрены опции для защиты от вирусов. Пользователь по своему усмотрению может исполнять макросы VBA или не исполнять их.