Главная страница Visual 2000 · Общий список статей

Что нужно для обучения VBA в Office 2000

Андрей Колесов

© Андрей Колесов, 2000
Авторский вариант. Статья была опубликована c незначительной литературной правкой в еженедельнике PC Week/RE (№ 46/2000, с. 52) PC Week/RE Online

А.Васильев, А.Андреев. VBA в Office 2000. Учебный курс: Издательство "Питер", 2002, — 432 с.: ил.

Как подступиться к изучению программирования? С чего начать и в каком направлении продвигаться? В последнее время эти вопросы слышатся все чаще. И многие спрашивающие имеют в виду именно освоение разработки приложений в среде Office/VBA, как весьма популярного и перспективного инструмента программирования. (Полтора года мой знакомый уезжал на постоянное жительство в США. Изучив спрос на тамошнем рынке труда, он решил срочно поменять свою специальность бухгалтера на программиста. За три месяца до отъезда начал "с нуля" изучение VBA, и, действительно, приехав за океан, устроился работать программистом...)

Казалось бы ответ простой: на книжных лотках всегда лежит 2-4 книги на эту тему — покупайте, читайте, пишите программы. Но при ближайшем рассмотрении оказывается, что все обстоит не там легко.

Процесс освоения программирования включает в себя два неотъемлемых компонента: изучение технологии программирования на логическом уровне и изучение некоторого конкретного инструмента. При этом нужно иметь в виду, что технологию, методику программирования можно изучать не только с помощью блок-схем и математических формул, но и с использованием какого-то конкретного языка. Поэтому хотелось бы четко разделить постановки двух разных задач: "изучение Basic" (например) и "изучение технологии программирования на примере Basic".

Тут можно вспомнить эпоху всеобщего обучения программирования в технических вузах (еще 10-15 лет назад), которое заканчивалось обычно тем, что студенты забывали этот предмет сразу после сдачи зачета (речь, конечно, не идет о подготовке специалистов по вычислительной технике). Причин такому результату было много, но одна из них — подмена изучения технологии заучиванием набора лексических составляющих языка программирования. Следствием этого была ситуация: "Каждый отдельный оператор понимаю. Но как из них сложить программу?"

Сегодня такой подход в принципе нереален, так как число элементов языка исчисляется тысячами. При этом современные средства разработки предоставляют качественно новые инструменты (по сравнению с компиляторами двадцатилетней давности), более понятные на чисто интуитивным уровне, которые можно последовательно изучать их в ходе решения полезных задач уже на самых первых шагах.

С момента появления Visual Basic (1991 год) я стараюсь следить за изданиями по этой тематике и должен сказать, что лучшим (а может быть и единственным) примером современного учебника для начинающих программистов (не только по VB!) был перевод книги "Running Visual Basic" Росса Нельсона, изданного "Русской Редакцией" в 1995 году (см. PC Week/RE, N 5/95, с.6).

Подзаголовок рецензируемой книги — "Учебный курс" — и наименования ее глав в виде последовательности семнадцати "уроков" настраивают на ожидание чего-то подобного. Когда, создав уже на первом занятии какой-то интересный макрос, ученик сможет начать осваивать огромный и увлекательный мир программирования в среде MS Office/VBA. Но читатетя ждет быстрое разочарование, так как уже с первых страниц становится понятным, что речь идет совсем не об учебном курсе, а о справочнике по VBA. В этой связи хотел бы сразу выразить сомнение, что "материала книги достаточно для того, чтобы научиться автоматизировать свою работу в рамках MS Office".

Причем издатели явно погорячились, указав в анонсе, что в книге представлена достаточно полная характеристика языка: в ней содержится лишь небольшая часть даже часто используемых конструкций. Разумеется, невозможно даже представить, чтобы в одной книге представить полное описание языка VBA, но все же упомянуть о существовании огромного множества других конструкций было бы полезно. А дать представление о наборе функций по обработке строк и дат, кажется просто необходимым.

По сути дела книга представляет собой "Краткий справочник по VBA" — сильно сокращенный вариант электронной справки Office/VBA. И такое издание действительно полезно для программистов, особенно для тех кто не очень силен в английском языке или предпочитает иметь дело с печатными документами, а не электронными. Но следует иметь в виду, что книга даст только общее представление о том или ином элементе VBA — для его практического использования скорее всего придется дополнительно изучать электронную справку.

Мне кажется, что данная книга в качестве учебника может быть полезнее как раз для достаточно опытных разработчиков, которые смогут получить быстрый обзор ключевых объектов разных офисных приложений. Только жаль, что авторы, рассмотрев работу пяти программ — Word, Excel, PowerPoint, Access и Outlook, — оставили вне внимания FrontPage. (Было бы гораздо логичнее исключить Access, который имеет наиболее специфическую реализацию VBA и которому посвящено довольно большое число специализированных книг.)

Итак, книга действительно может быть полезной при изучении VBA, но она скорее относится к "необходимым", но никак не "достаточным" условием его освоения. Все же "учебный курс" и "справочник" — это "две большие разницы", точно так же, как прочитав энциклопедию (очень полезное издание), нельзя овладеть методикой научного исследования.

Web-сайт издательства "Питер": www.piter-press.ru

В начало статьи