Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Редактор Visual Basic



Прежде чем приступить к описанию синтаксиса VBA, следует познакомиться со средством разработки и отладки программ на VBA — редактором Visual Basic, входящим в состав Microsoft Office. Если вы уже работали с отдельным выпуском Visual Basic (не "для приложений"), то многое из излагаемого далее окажется хорошо знакомым. Если же вы перешли к работе с новым редактором VBA от редактора, входившего в состав Excel 5.0 или Excel 95, то вас ждет несколько приятных сюрпризов. Упомянем здесь лишь несколько главных нововведений:

· Улучшились средства редактирования, отладки и обзора проектов. Теперь имеется общий для всех приложений Office инструмент: редактор Visual Basic(VBE). В отличие от предыдущих версий VBA для Excel, новый редактор Visual Basic работает в своем собственном окне, а не в окне Excel или другого вызвавшего его приложения.

· Появилось общее для всех приложений средство разработки диалога с пользователем: Microsoft Forms, пришедшее на смену листам диалога в Excel 5 и Excel 95. При этом поддерживается преемственность со старыми разработками, и запрограммированные ранее диалоговые окна прежних версий Excel могут нормально работать и в Excel 97.

· Теперь можно использовать условную компиляцию: вставлять в текст программы директивы, которые будут указывать, какие части кода должны компилироваться, а какие должны исключаться из компиляции — в зависимости от значения аргументов этих директив.

Итак, давайте обратимся к редактору Visual Basic. Для того чтобы открыть окно этого редактора (рис. 6.3-1), достаточно выполнить следующее действие:

Ø Сервис Ø Макрос… Ø Редактор Visual Basic

Рис. 6.3-1. Окно редактора Visual Basic

Именно благодаря тому, что теперь редактор Visual Basic работает в отдельном окне, появилась возможность использовать единообразные средства разработки приложений в Excel, Word, PowerPoint и Access.

В открывшемся окне редактора Visual Basic обычно используются три основных панели.

· Панель проекта, располагающаяся в верхнем левом углу окна редактора. На ней отображается иерархическое дерево элементов разрабатываемого проекта. Сюда входят некоторые объекты верхнего уровня приложения, в котором разрабатывается проект. Для Excel это открытые рабочие книги, их рабочие листы и листы диаграммы, и объект ThisWorkbook, представляющий собой текущую рабочую книгу. Для Word это текущий шаблон (по умолчанию это шаблон Normal.dot), открытые документы и объект ThisDocument, представляющий собой текущий документ. Кроме того, в это иерархическое дерево могут входить и другие объекты: прежде всего, модули, содержащие программный код, и объекты UserForm — пользовательские формы (диалоговые окна), а также могут входить и специальные модули класса, позволяющие разрабатывать собственные объекты.

· Панель свойств, расположенная непосредственно под панелью проекта в левой части экрана. Она позволяет просматривать и изменять свойства различных входящих в проект объектов, отображаемых на панели проекта. Список свойств может отображаться как в алфавитном порядке, так и в сгруппированном по категориям виде.

· Панель редактора кода. В первый момент при вызове редактора Visual Basic она пуста. Чтобы можно было начать писать текст программы, нужно сначала вставить хотя бы один модуль (команда Ø Вставка Ø Модуль). В результате в этой панели откроется окно нового модуля. Два раскрывающихся списка в верхней части этого окна помогают отыскивать нужное место в длинных модулях: в левом списке можно выбрать нужный раздел модуля, а в правом — имя конкретной процедуры или функции.

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

Следует отметить также, что окна редактора кода, редактора диалогов и просмотра объектов являются "многодокументными", то есть можно открыть одновременно несколько различных окон данного типа: например, сразу два окна редактора кода для разных модулей или процедур.

Итак, после того, как открыто окно модуля, можно приступить к вводу программы. Давайте для начала напишем простейшую программу, ставшую уже каноническим примером: вывод на экран сообщения "Здравствуй, Мир!". Сделайте щелчок мышью в пустом пока окне редактора кода и введите следующий текст:

Sub Hello()

MsgBox("Здравствуй, Мир!")

End Sub

Отметим еще, что последнюю строчку вам не придется вводить вручную: сразу же после того, как будет введена первая строка программы и нажата клавиша <Enter>, она сгенерируется автоматически. Когда же во второй строке будет введено имя функции MsgBox и открывающая список параметров скобка, на экране непосредственно под точкой ввода появится всплывающая строка-подсказка желтого цвета с напоминанием синтаксиса данной встроенной функции (рис. 6.3-2).

Рис. 6.3-2. Ввод программы в окне редактора кода

Вы уже знаете из главы 6.1 о том, как можно вызвать написанную процедуру из приложения: например, это можно сделать с помощью диалогового окна Макрос[1]. Но можно проверить, как работает разработанная нами программа немедленно, не покидая окна редактора Visual Basic. Для этого достаточно щелкнуть по кнопке запуска программы или диалога, располагающейся на панели инструментов Стандарт, или нажать клавишу <F5>, или выполнить следующую команду:

Ø Запуск Ø Запуск подпрограммы/UserForm

Автоматически откроется окно приложения, и вы увидите маленькое диалоговое окошечко с пресловутым сообщением (рис. 6.3-3). Вот и написана первая программа на VBA — смело жмите кнопку ОК и переходите к чтению следующего параграфа!

Рис. 6.3-3. Первая написанная вручную программа с диалоговым окном





Дата публикования: 2014-12-28; Прочитано: 578 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.009 с)...