Структура редактора VBA (Visual Basic for Applications). Visual basic редактор


Настройка среды Visual Basic Editor

В процессе программирования на VBA в Excel вы будете проводить много времени, работая в окнах VBE. Чтобы сделать редактор более удобным, вам понадобится настройка среды Visual Basic Editor под ваши предпочтения.[1] Находясь в Excel, перейдите в окно VBE, например, нажав Alt+F11. В строке меню окна VBE выберите команду Tools –> Options. Появится диалоговое окно Options (Параметры) с четырьмя вкладками: Editor (Редактор), Editor Format (Формат редактора), General (Общие) и Docking (Прикрепление). Кстати, не путайте это окно с диалоговым окном Параметры Excel программы Excel, которое можно открыть в Excel с помощью команды Файл –> Параметры Excel.

Рис. 1. Вкладка Editor диалогового окна VBE Options (Параметры)

Скачать заметку в формате Word или pdf

Вкладка Editor

На рис. 1 показаны параметры, доступ к которым можно получить, щелкнув на вкладке Editor (Редактор).

Настройка Auto Syntax Check (Автоматическая проверка синтаксиса) определяет, будет ли появляться диалоговое окно, когда VBE обнаружит синтаксическую ошибку в коде VBA. В этом диалоговом окне указывается тип допущенной ошибки. Если отменить установку этого флажка, то VBE выделит синтаксические ошибки, отобразив соответствующие фрагменты кода другим цветом, и вам не придется работать в диалоговых окнах, которые появляются на экране. Начинающим программистам рекомендуется установить эту опцию.

При установленном параметре Require Variable Declaration (Обязательное декларирование переменных) VBE вставляет в начале каждого нового модуля оператор Option Explicit.  Если в модуле задан этот оператор, то вы должны явно определить каждую используемую в нем переменную. Таким образом, у вас вырабатывается хорошая привычка, которая, правда, требует дополнительных усилий. Если вы не объявляете переменные, все они имеют тип данных Variant; это достаточно гибко, но неэффективно с точки зрения использования аппаратных ресурсов и скорости выполнения кода. Имейте ввиду, что изменение параметра Require Variable Declaration влияет на новые модули, а не на существующие.

Если выбрана опция Auto List Members (Автоматическая вставка объектов), VBE предоставляет помощь при вводе кода VBA, отображая список элементов текущего объекта. К этим элементам относятся методы и свойства объекта, название которого вводится вручную. Данный параметр весьма полезен, поэтому его рекомендуется всегда активизировать. На рис. 2 показан пример использования этого параметра – VBE отображает список элементов объекта Application. Можете выбрать элемент из списка, чтобы не вводить его с помощью клавиатуры (в результате название элемента будет введено без ошибок).

Рис. 2. Автоматическая вставка объектов при ручном вводе кода

Если включен параметр Auto Quick Info (Отображать краткие сведения), VBE будет отображать информацию об аргументах функций, свойств и методов, названия которых вы вводите с клавиатуры. Рекомендуется всегда оставлять эту настройку включенной. На рис. 3 отображается синтаксис свойства Cells.

Рис. 3. Автоматическое отображение кратких сведений о синтаксисе

Если включен параметр Auto Data Tips, VBE отображает при отладке кода значение переменной, над которой находится указатель мыши. Рекомендуется всегда держать его включенным.

Настройка Auto Indent (Автоматический отступ) определяет, располагает ли автоматически VBE каждую новую строку программы с тем же отступом, который задан для предыдущей строки. Тем, кто использует отступы в программных кодах, советуем всегда обращаться к этому параметру. Вы можете также задать количество символов в отступе (по умолчанию указано значение 4). Используйте клавишу <Таb>, а не пробел, чтобы задать отступ в коде. При использовании клавиши <Таb> отступы получаются более «правильными». Кроме того, для отмены отступа в конкретной строке воспользуйтесь комбинацией клавиш <Shift+Tab>. Она может применяться при выделении нескольких строк.

При выборе параметра Drag-and-Drop Text Editing (Включить редактирование перетаскиванием) вы можете копировать и перемещать текст, перетаскивая его с помощью мыши. Если вы любите такой метод работы, оставьте этот параметр включенным. Я никогда не пользуюсь функцией перетаскивания, так как предпочитаю для копирования и вставки обращаться к комбинациям клавиш.

Параметр Default to Full Module View (По умолчанию использовать полный режим просмотра) определяет принцип просмотра процедуры. Если он включен, процедуры в окне кода помещаются в одно окно с полосой прокрутки. Если же он отключен, то вы можете просмотреть в определенный момент только одну процедуру. Рекомендуем активизировать этот параметр.

Когда параметр Procedure Separator (Разделение процедур) включен, в конце каждой процедуры в окне кода отображаются специальные разделители. Если вам нравятся эти визуальные подсказки окончания процедуры, выставляйте данный флажок.

Вкладка Editor Format

Параметры на этой вкладке определяют формат шрифта кода в VBE и некоторые иные свойства (рис. 4).

Рис. 4. Вкладка Editor Format в диалоговом окне Options

Параметр Code Colors (Цвета кода). Предоставляет возможность выбрать цвета кода (текста и фона) и индикатора, который используется для выделения разных элементов программы VBA. Цвета, конечно, выбираются в зависимости от личных предпочтений. Вы можете согласиться с цветами, принятыми по умолчанию. Для разнообразия можете изменить эти настройки.

Параметр Font (Шрифт). Предоставляет возможность указать шрифт, используемый в модулях VBA. Наибольшая эффективность достигается при работе с моноширинным шрифтом (например, Courier New). В таком шрифте все символы имеют одинаковую ширину, что делает программу более удобной для восприятия и анализа, так как все символы одинаково выровнены; кроме того, хорошо видны пробелы между словами.

Список Size (Размер). Определяет размер шрифта кода модулей VBA. Эта настройка зависит от личных предпочтений, которые, в свою очередь, определяются разрешением монитора и вашим зрением. По умолчанию размер задан равным 10.

Параметр Margin Indicator Ваг (Полоса индикатора границы). Отображает вертикальную полосу вдоль левой границы окна кода, на которой высвечиваются всевозможные индикаторы. Его необходимо выставить; в противном случае вы не увидите полезные графические извещения при отладке кода.

Вкладка General

На рис. 5 показаны параметры, доступные на вкладке General (Общие) диалогового окна Options.

Рис. 5. Вкладка General в диалоговом окне Options

Раздел Form Grid Settings (Параметры сетки формы). Находящиеся в этом разделе параметры предназначены для настройки пользовательских диалоговых окон; с их помощью определяются параметры сетки, которая облегчает позиционирование элементов управления в окне UserForm.

Флажок Show ToolTips (Показать подсказки). Определяет поведение кнопок панели инструментов. Рекомендуется всегда его устанавливать.

Флажок Collapse Proj. Hides Windows (Скрывать окна при сворачивании проектов). Установка этого флажка приведет к автоматическому закрытию окон в случае сворачивания проекта в окне Project. Рекомендуется установить этот флажок.

Раздел Edit and Continue (Редактировать и продолжать). Содержит единственный флажок, который может оказаться полезным в процессе отладки. В случае установки этого флажка VBA отображает сообщение, если переменные теряют присвоенные им значения в результате появления каких-либо проблем.

Раздел Error Trapping (Перехват ошибок). Находящиеся в этом разделе параметры определяют, что происходит при возникновении ошибки. Если вы создаете процедуры обработки ошибок, убедитесь в том, что установлен переключатель Break on Unhandled Errors (Остановка при возникновении неисправимой ошибки). При заданном параметре Break on All Errors (Остановка при возникновении любой ошибки) процедуры обработки ошибок игнорируются (вряд ли это нужно).

Раздел Compile (Компиляция). Находящиеся в этом разделе два параметра управляют процессом компиляции кода. Рекомендуется установить оба этих параметра. На современных компьютерах компиляция кода происходит практически мгновенно, если его размеры сравнительно невелики.

Вкладка Docking

На рис. 6 показана вкладка Docking (Прикрепление) диалогового окна Options. Ее параметры определяют поведение нескольких окон редактора VBE. На вкладке отображаются окна, которые могут быть прикреплены. Когда окно прикреплено, оно фиксируется по отношению к одной из границ окна VBE. В результате намного легче найти вспомогательное окно, так как оно отображается в строго определенной области. Если вы отключите все параметры прикрепления, то окна перемешаются между собой, а это усложнит работу. Как правило, идеальным выбором будут настройки по умолчанию.

Рис. 6. Вкладка Docking диалогового окна Options

Для прикрепления окна просто перетащите его в новое место. Например, вам может понадобиться присоединить окно Project Explorer к левой границе окна. Захватите его за заголовок и переместите влево. Отпустите кнопку мыши в момент, когда окно прилипнет к левому краю экрана. Прикрепление окна в VBE всегда было основной проблемой при настройке рабочей среды, однако после многочисленных попыток вам, будем надеяться, все же удастся решить эту задачу.

[1] По материалам книги Джон Уокенбах. Excel 2010. Профессиональное программирование на VBA. – М: Диалектика, 2013. – С. 177–183.

baguzin.ru

9.3. Редактор Visual Basic. Word 2007.Популярный самоучитель

9.3. Редактор Visual Basic

После записи рассмотренного выше макроса к шаблону Normal добавился следующий текст макроса:

Sub Arial_10_bold()

“ Arial_10_bold Macro

“ Arial 10 Полужирный

With Selection.Font

.Name = "Arial"

.Size = 10

.Bold = True

.Italic = False

.Underline = wdUnderlineNone

.UnderlineColor = wdColorAutomatic

.StrikeThrough = False

.DoubleStrikeThrough = False

.Outline = False

.Emboss = False

.Shadow = False

.Hidden = False

.SmallCaps = False

.AllCaps = False

.Color = wdColorAutomatic

.Engrave = False

.Superscript = False

.Subscript = False

.Spacing = 0

.Scaling = 100

.Position = 0

.Kerning = 0

.Animation = wdAnimationNone

End With

End Sub

Наверняка пользователям, незнакомым с программированием, такой текст покажется очень сложным, однако при ближайшем рассмотрении оказывается, что это простой набор параметров, которые установлены или не установлены. Установленный параметр обозначается словом True, а неустановленный – False.

Для записи макросов, как и для других команд, в Microsoft Word используется язык Visual Basic for Applications (VBA, Visual Basic для приложений). Макрос представляет собой набор команд и операторов на VBA. Каждая команда и действие в Microsoft Word представлены в виде строк формата VBA, процесс записи макроса тоже представляет собой формирование таких строк. Таким образом, пользователь имеет возможность изменить или создать макрос без повторного выполнения всей процедуры. Хотя макрос VBA можно создать в любом текстовом редакторе, не стоит пренебрегать возможностью записи макроса в Word. Макросу, созданному при помощи Microsoft Word, можно добавлять новые команды и функции, а также на таких макросах можно изучать язык VBA.

Макросы можно редактировать, используя специальную утилиту, которая входит в поставку Microsoft Office, – редактор Visual Basic (рис. 9.10).

Рис. 9.10. Окно редактора Visual Basic

Данная программа содержит возможности, которые позволяют работать с макросом: тестировать, отлаживать, запускать на выполнение. Используя этот редактор, можно добавлять, изменять и удалять объекты в макросах, создавать пользовательские диалоговые окна, отлаживать код программных процедур, просматривать и выбирать компоненты текущих проектов и библиотек, определять вид и поведение объектов макроса во время выполнения и выполнять многое другое.

Окно редактора Visual Basic можно открыть несколькими способами, например нажав кнопку Visual Basic на панели Разработчик.

Поделитесь на страничке

Следующая глава >

it.wikireading.ru

Редактор vba.

Средства программирования на VBA

* * *

В отличие от других средств разработки программного обеспечения, где единственным способом создания новой программы является написание ее кода и создание в визуальных редакторах диалоговых окон или использование уже готовых фрагментов кода других программ, в Visual Basic for Applications есть уникальное средство разработки, не присутствующее более нигде и позволяющее быстро научиться создавать простые макросы для Word, Excel и PowerPoint даже без использования учебников, описаний языка и даже чтения Справочной системы. Это средство - так называемая "запись макросов". При работе в любом из вышеперечисленных компонентов Microsoft Office можно включить специальный режим записи макросов, и тогда все действия пользователя в редакторе будут автоматически "переводиться" на язык Visual Basic for Applications и записываться в виде текста программы. Этот текст можно потом изучить для выяснения синтаксиса и устройства языка, а также необходимым образом его модифицировать. Разумеется, отнюдь не все возможности Visual Basic for Applications реализуются простой записью действий пользователя, однако для простых макрокоманд и для обучающих целей этого средства хватит.

В Microsoft Word для записи макроса надо выбрать из меню "Сервис" пункт "Макросы", а затем из выпадающего подменю - пункт "Начать запись" (рис. 3.1).

03_01.bmp

Рис. 3.1. Запись макроса

Документы Microsoft Word - собственно документы с расширением ".doc" и шаблоны документов с расширением ".dot" - устроены так, что могут хранить в себе программы на Visual Basic for Applications. Каждую программу, хранящуюся в документе Word, может вызывать на исполнение либо кнопка на панели инструментов, либо сочетание клавиш, либо пункт меню, либо другая программа (ну и, естественно, выбор этой программы из списка макрокоманд в диалоговом окне "Сервис-Макрос-Макросы". Возможно любое сочетание способов вызовов. Поэтому перед началом записи макроса пользователю предлагается сразу назначить записываемому макросу способ его вызова (рис. 3.2).

03_02.bmp

Рис. 3.2. Назначение макросу способа вызова.

Если на данном этапе для вызова макроса не будет назначена кнопка или сочетание клавиш, то это всегда можно будет сделать впоследствии с помощью диалогового окна "Настройка" (рис. 3.3) так же, как и для любой другой команды Word. Названия макросов, которые могут быть запущены пользователем, перечисляются в разделе "Макросы" этого окна и состоят из названия проекта (обычно совпадает с названием шаблона или документа, в котором макрос содержится), имени модуля и имени макроса в модуле (что это такое - смотрите ниже).

03_03.bmp

Рис. 3.3. Диалоговое окно "Настройка".

После нажатия кнопки "Ок" в окне Word появится панель "Запись макроса" (рис. 3.4).

03_04.bmp

Рис. 3.4. Панель "Запись макроса".

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

После окончания выполнения необходимых действий необходимо нажать левую кнопку на панели - "Остановка записи". Если необходимо прерваться и все же выделить какой-нибудь обьект мышью, то необходимо нажать правую кнопку на этой панели - "Пауза". При повторном ее нажатии процесс записи продолжится.

Пример подробного анализа результатов подобной записи будет показан в следующей части. А сейчас рассмотрим другой, более традиционный способ написания программ на Visual Basic for Applications - посредством Редактора VBA.

Этот редактор вызывается из меню "Сервис"-"Макросы"-"Редактор Visual Basic" или нажатием клавиш Alt-F11. Его внешний вид таков - см. рис. 3.5.

03_05.bmp

Рис. 3.5. Редактор VBA

Стоит сразу сказать об отношениях Редактора VBA и Справочной системы по Visual Basic for Applications с русским языком. Наиболее доброжелательна к русскоязычным пользователям в этом плане была 97-я версия Microsoft Office, в которой как интерфейс Редактора VBA, так и значительная часть Справочной системы по Visual Basic for Applications были переведены на русский язык. Большинство изображений экрана в этой книге сделано именно в русской версии Microsoft Office 97, в частности, для того, чтобы не приходилось переводить надписи на элементах интерфейса. К сожалению, в более новых версиях Microsoft Office их создатели такими вещами, как русификация программистской части этого пакета и тем более Справки ко встроенному языку, решили не заниматься, и в итоге в Microsoft Office 2000 и Microsoft Office XP ни интерфейс Редактора VBA, ни Справочная система по Visual Basic for Applications не русифицированы. Поэтому если для вас восприятие английских названий пунктов меню и чтение Справочной системы на английском языке представляют определенные сложности, то вам лучше начать изучение Visual Basic for Applications именно на основе русской версии Microsoft Office 97, не смущаясь ее устареванием к сегодняшнему дню. В этом случае новые возможности и ограничения более современных версий Microsoft Office вы сможете узнать после, непосредственно при работе с ними.

Для упрощения изложения в дальнейшем тексте будет подразумеваться, что процесс создания программ и изучения языка Visual Basic for Applications проводится в среде Microsoft Word. Поскольку интерфейс Редактора VBA для всех компонентов Microsoft Office одинаков (за исключением Microsoft Access, да и то лишь в 97-й версии пакета), то перейти из среды Word на его использование в остальных компонентах офисного пакета от Microsoft будет нетрудно.

Окно редактора Visual Basic for Applications состоит из следующих частей: Менеджер проектов (в английской версии Редактора VBA - Project Explorer), Окно свойств (в английской версии - Properties Window), Окна текста программ и дизайна форм (Code Window), Окно отладки (Immediate Window), Окно контрольного значения (Watch Window), Окно локальных переменных (Locals Window), Стек вызова (Call Stack), Окно просмотра обьектов (Object Browser). Ниже мы рассмотрим все эти компоненты подробнее.

Программы на Visual Basic for Applications хранятся в документах Microsoft Office. Так, в среде Word, как уже говорилось, они могут находиться в документах и шаблонах Word, а в среде Excel - в книгах с электронными таблицами, создаваемыми в этой программе.

Каждый файл, содержащий макросы, называется проектом. В окне Менеджера проектов (Project Explorer) отображаются названия всех доступных Редактору VBA проектов, в состав которых в Word входят открытые документы и шаблоны, а также шаблоны, загруженные глобально - через помещение их в папку автозагружаемых файлов Word, с помощью размещения в ней ярлыков на них или с помощью подключения через диалоговое окно "Сервис - Шаблоны и надстройки". Кроме того, при работе в Microsoft Word всегда в этом окне отображается шаблон Normal.dot со всеми макросами, сохраненными в нем (см.рис. 3.6).

03_06.bmp

Рис. 3.6. Менеджер проекта

Щелкнув мышью по знаку "+" слева от названия проекта, можно открыть список имеющихся его компонентов. Однако так можно поступить лишь с проектами, открытыми в Word: шаблон, загруженный глобально, через папку автозагружаемых файлов или путем "подключения" в диалоговом окне "Сервис - Шаблоны и надстройки", так открыть нельзя, - чтобы получить доступ к его коду для редактирования, необходимо открыть его как файл. Иначе при попытке просмотра будет выдано сообщение "Проект недоступен для просмотра" и доступ к коду будет невозможен (рис. 3.7).

03_07.bmp

Рис. 3.7. Запрет доступа к коду шаблона, загруженного глобально

Просмотр компонентов проекта можно запретить путем задания пароля. Но подобные действия являются признаком очень дурного тона в программировании.

В случае попытки открытия запароленного проекта в той же версии Office, что и та, в которой он был создан (или в более современной) пользователю будет выдан запрос на ввод пароля. Если же макросы в запароленном проекте, созданном в Microsoft Office 2000 или XP, пытаться открыть в более ранней версии Office - Microsoft Office 97, то на экран будет выдано такое же сообщение, как и при попытке просмотреть макросы в загруженном глобально проекте - "Проект недоступен для просмотра" (в английской версии - Project is unviewable). Вызвано это тем, что в новых версиях Office парольная защита от просмотра кода программ на Visual Basic for Applications значительно усовершенствована, в частности, добавлены новые алгоритмы зашифровывания этого кода.

В Microsoft Word компоненты проекта делятся на пять больших категорий:

1. "Microsoft Word обьекты". Здесь имеется только один обьект - называющийся по умолчанию ThisDocument (имя можно изменить). Его контекстное меню, появляющееся при нажатии правой кнопки мыши, выглядит так, как показано на рис. 3.8.

03_08.bmp

Рис. 3.8. Контекстное меню обьекта ThisDocument

При выборе пункта Обьект произойдет переход к соответствующему документу - к его содержимому: тексту, графике (этот пункт недоступен для шаблонов, на которых основаны созданные документы, - в этом случае шаблоны, тот же Normal.dot, открываются как проекты и позволяют изменять содержащиеся в них макросы, но не позволяют редактировать собственно свое содержимое). В документ Microsoft Word можно вставить специальные обьекты - кнопки, поля ввода текста, поля выбора вариантов и др). В этом случае после выбора пункта Программа контекстного меню обьекта ThisDocument можно написать программу, которая будет выполняться при нажатии соответствующей кнопки, введении текста и др. К написанию такой программы можно перейти и из контекстного меню самого специального обьекта - выделив его, нажав правую кнопку и выбрав пункт "Исходный текст".

(В Microsoft Excel в качестве обьектов представлены все листы рабочей книги Excel по отдельности, а также сама книга как целое.)

2. "Модули." Модули - это и есть собственно программы в Word, макросы. Щелкнув два раза мышью на имени модуля, можно получить доступ к тексту программы или начать ее создавать. Программы, записанные пользователем с помощью средства записи макросов, хранятся по умолчанию в модуле NewMacros шаблона Normal.dot.

Для того, чтобы создать новый модуль, необходимо из контекстного меню Менеджере проектов выбрать пункт "Вставить"-"Модуль" (рис. 3.9).

03_09.bmp

Рис. 3.9. Вставка модуля

Для начала написания программы надо в окне программы написать "Sub Имя программы", после чего Редактор VBA сам добавит фразу "End Sub", и между этими двумя фразами должен заключаться текст основной части программы (рис. 3.10).

03_10.bmp

Рис. 3.10. Начало создания программы

studfiles.net

Знакомство с редактором VBA | scriptcoding.ru

В этой статье мы с вами познакомимся с редактором VBA. Тем, кто уже имел опыт программирования в Delphi или C++, редактор VBA покажется довольно знакомым. И так, как открыть редактор vba - для этого можно ввести комбинацию плавишь Alt + F11, или войти в соответствующее меню пакета Microsoft. Так, у меня пакет Microsoft Office 2007, и тут доступ к макросам осуществляется через вкладку Вид или Разработчик. В других версиях возможен вариант Сервис/Макрос/Редактор Visual Basic.

Хорошо, в редактор мы вошли, и теперь давайте познакомимся с основными его составляющими.

Окна редактора VBA

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

Project Explorer – окно проектов, которое представляет древовидную структуру открытых в текущий момент файлов (например, документы, рабочие книги или же шаблоны) и объектов, что содержаться в данных файлах (это могут быть модули, ссылки, формы, классы и так далее). Из этого окна можно перейти к заданным модулям и объектам форм, а также, можно использовать соответствующие кнопки этого окна: View Code – редактор кода, View Object – объект, например, форма и Toggle Folders  - папки.

Properties Window – окно свойств редактора vba, тут отображаются все свойства для выбранного объекта. Однако, если у вас полностью пустой проект (есть только окно редактора кода для текущего модуля), то в окне свойств будет отображаться только свойство Name (Имя). В окне Свойств есть две вкладки: Alphabetic – список свойств отображается в алфавитном порядке и Categorized – список свойств отображается по категориям.

Code Window – редактор кода. Тут отображается код языка VBA, должен сказать, что мне удобней написать код в редакторе Notepad++, так как тут происходит лучше подсветка кода (выделение ключевых слов и лексем). Само окно редактора кода vba в самом низу слева содержит два переключателя: Full Module View – сразу отображается весть исходный код, макросы (процедуры) отделяются друг от друга серой линией; Procedure View – будет отображаться код только одного макроса.

Для выбора макроса нужно использовать выпадающий список, который находится справа вверху.  Напротив, слева находится еще один выпадающий список (Object List), который позволяет выбрать тот объект, процедуры которого надо просмотреть. Так, если вы записали простой макрос, то у вас будет в списке отображаться только General (общая область).

Меню редактора VBA

Тут мы рассмотрим те пункты меню VBA редактора, которые наиболее важны и значимы:

File – данное меню позволяет выполнить сохранение проекта (Ctrl + S) – Save, импортировать в проект ранее сохраненный модуль, форму или класс (Ctrl + M) – Import File, сохранить заданный модуль (.bas), класс (.cls) или форму (.frm) в виде отдельного файла (Ctrl + E) – Export File. Остальные пункты меню отвечают за удаление выбранного элемента проекта, например, форму или модуль – Remove, вывести на печать выбранный модуль или форму (Ctrl + P) – Print, ну и, естественно, закрыть редактор VB (Alt + Q).

Edit – данное меню отвечает за редактирование кода – копирование, вставка и так далее. Полагаю, что тут и без объяснений все ясно.

View – вид, тут отображаются команды для отображения окон и позиционирования элементов формы. Например:

  • Code – позволяет активировать окно с кодом для выбранного модуля или формы (F7)
  • Object – позволяет отобразить объект, выбранный в окне Project Explorer (Shift + F7)
  • Definition – позволяет показать окно Object Browser для элемента, на который указывает курсор в окне редактора кода (Shift + F2).
  • Object Browser – открывает одноименное окно для просмотра доступных объектов (F2)
  • Immediate Window, Locals Window и Watch Window – отображает окно отладчика заданного типа.
  • Project Explorer (Ctrl + R) и Properties Window (F4) – отображает одноименные окна, описанные выше.
  • Toolbox – данный пункт меню редактора vba доступен только в случае работы с формами, он отображает элементы управления.
  • Toolbars – позволяет настроить панель инструментов.

Insert – данное меню позволяет добавить в проект новые модули, формы или процедуры.

Format – содержит команды для работы с формами и их компонентами, например, выравнивание, отступы или группировка элементов формы (кнопки, текстовые поля и так далее).

Debug – собственно, тестирование и отладка самих макросов. Меню содержит следующие пункты:

  • Compile – компиляция выбранного проекта в окне Project Explorer редактор vba.
  • Step Info, Step Over и Step Out – позволяют задать шаг выполнения кода.
  • Run To Cursor – позволяет выполнить отладку до позиции курсора в тексте кода (Ctrl + F8)
  • Add Watch – добавить переменные или выражения, значения которых надо наблюдать в процессе выполнения кода.

Остальные пункты позволяют очищать контрольные точки или удалять контрольные значения, в большинстве случаев, данные пункты не будут использоваться, и их можно легко изучить самостоятельно.

Run – собственно, данное меню отвечает за запуск макроса, команда Run Sub/Run Form запускает активный в данный момент макрос или форму (F5), Break – прервать выполнение кода (Ctrl + Break) и Reset - остановить выполнение кода ()

Хорошо, в этой статье мы вкратце изучили редактор VBA и его составные.

scriptcoding.ru

Структура редактора VBA (Visual Basic for Applications)

Редактор VBA активизируется командой Alt + F11 или Сервис, Макрос, Редактор Visual Basic (Tools, Macro, Visual Basic Editor) или нажатием кнопки Редактор Visual Basic (Visual Basic Editor) панели инструментов Visual Basic.

Возвратиться из редактора VBA в рабочую книгу можно нажатием кнопки Вид Microsoft Excel (View Microsoft Excel) Интерфейс VBA состоит из следующих основных компонентов: окно проекта, окно свойств, окно редактирования кода, окна форм, меню и панели инструментов.

 

Окно проекта

Окно проекта в редакторе VBA активизируется выбором команды Вид, Окно проекта (View, Project window) или нажатием кнопки Окно проекта (Project window) В окне проекта (VBAProject) представлена иерархическая структура файлов форм и модулей текущего проекта (рис. 1.2).

 

В проекте автоматически создается модуль для каждого рабочего листа и для всей книги. Кроме того, модули создаются для каждой пользовательской формы, макросов и классов. По своему предназначению модули делятся на два типа: модули объектов и стандартные. К стандартным модулям относятся те, которые содержат макросы. Такие модули добавляются в проект командой Вставка, Модуль (Insert, Module). К модулям объектов относятся модули, связанные с рабочей книгой, рабочими листами, формами, и модули класса.

 

Формы создаются командой Вставка, UserForm (Insert, UserForm), а модули класса — командой Вставка, Модуль класса (Insert, Module). По мере создания, добавления и удаления файлов из проекта эти изменения отображаются в окне проекта. Отметим, что удаление файла из окна проекта производится выбором значка файла с последующим выполнением команды Файл, Удалить (File, Delete).

 

В окне проекта выводится проект всех открытых рабочих книг. Это позволяет легко копировать формы и коды из одного проекта в другой, что убыстряет процесс создания новых приложений.

 

Рис. 1.2. Окно проекта

 

Окно для редактирования кода

Перемещение указателя на значок файла в окне проекта и выполнение двойного щелчка кнопкой мыши открывает окно редактора кода (рис. 1.3) для соответствующего модуля.

 

Рис. 1.3. Окно редактирования кода

 

Окно редактирования кода служит в качестве редактора для ввода и изменения кода процедур приложения. Код внутри модуля организован в виде отдельных разделов для каждого объекта, программируемого в модуле. В окне редактирования доступны два режима представления кода: просмотр отдельной процедуры и всего модуля. Переключение режимов работы окна редактирования кода осуществляется выбором одной из двух кнопок в нижнем левом углу окна редактирования кода (табл. 1.1), либо установкой или снятием флажкаПросмотр всего модуля (Default to Full Module View) вкладки Редактор (Editor) диалогового окна Параметры (Options), отображаемого на экране командой Сервис, Параметры(Tools, Options) (рис. 1.4).

 

Таблица 1.1. Режимы работы редактора кода

Кнопка Режим работы
Отдельная процедура
Все процедуры модуля

 

Рис. 1.4. Диалоговое окно Параметры

 

Два раскрывающихся списка в верхней части окна редактора кода облегчают ориентацию в процедурах. Левый раскрывающийся список позволяет выбрать управляющий элемент или форму, а правый — содержит список событий, допустимых для выбранного в левом списке объекта. Отметим, что при выборе элемента управления в форме посредством двойного щелчка или перемещении указателя на элемент управления и нажатии кнопки Программа (Veiw Code) открывается окно редактирования кода как раз в том месте, где располагается процедура, связанная с этим элементом управления. Обратный переход от процедуры к объекту управления быстрее всего осуществить нажатием кнопки Объект(Veiw Object).

 

Интеллектуальные возможности редактора кода

Написание программ существенно облегчается за счет способности редактора кода автоматически завершать написание операторов, свойств и параметров. При написании кода редактор сам предлагает пользователю список компонентов, логически завершающих вводимую пользователем инструкцию. Например, набирая код

 

Range("A1").

 

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

 

Рис. 1.5. Список компонентов

 

Автоматическое отображение списка компонентов происходит только при установленном флажке Список компонентов (Auto List Members) вкладки Редактор (Editor) диалогового окна Параметры (Options), отображаемого на экране после выбора команды Сервис, Параметры (Tools, Options).

 

Список компонентов можно выводить на экран нажатием комбинации клавиш <Ctrl>+<J>, при этом список отображается как при установленном, так и при снятом флажке Список компонентов (Auto List Members) вкладки Редактор (Editor) диалогового окна Параметры (Options).

 

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

 

Рис. 1.6. Отображаемые сведения о вводимой процедуре

 

Автоматическое отображение на экране сведений о процедурах, функциях, свойствах и методах после ввода их имени происходит только при установленном флажке Краткие сведения (Auto Quick Info) вкладки Редактор (Editor) диалогового окна Параметры (Options), отображаемого на экране после выбора команды Сервис, Параметры (Tools, Options) (см. рис. 1.4).

 

Описанную выше всплывающую подсказку можно также выводить на экран нажатием комбинации клавиш <Ctrl>+<!>. При этом всплывающая подсказка отображается как при установленном, так и при снятом флажке Краткие сведения вкладки Редактор диалогового окна Параметры (Options).

 

Редактор кода также производит автоматическую проверку синтаксиса набранной строки кода сразу после нажатия клавиши <Enter>. Если после набора строки и нажатия клавиши <Enter> строка выделяется красным цветом, то это как раз и указывает на наличие синтаксической ошибки в набранной строке. Эту ошибку необходимо найти и исправить. Кроме того, если установлен флажок Проверка_синтаксиса (Auto Syntax Check) вкладки Редактор (Editor) диалогового окна Параметры (Options), отображаемого на экране посредством выбора команды Сервис, Параметры (Tools, Options) (см. рис. 1.4), помимо выделения красным цветом фрагмента кода с синтаксической ошибкой, на экране отображается диалоговое окно, поясняющее, какая возможная ошибка произошла.

 

Редактор кода обладает еще одной мощной интеллектуальной возможностью, увеличивающей эффективность работы пользователя. Если курсор расположить на ключевом слове языка VBA, имени процедуры, функции, свойства или метода и нажать клавишу <F1>, то на экране появится окно со справочной информацией об этой функции. Обычно в справке имеется пример использования кода, что позволяет быстрее разобраться в ситуации, которая при написании программы озадачила вас.

 

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

 

Окно редактирования форм (UserForm)

Для создания диалоговых окон, разрабатываемых приложений в VBA, используются формы. Редактор форм является одним из основных инструментов визуального программирования. Форма в проект добавляется с помощью команды Вставка, Форма (Insert, Form) или нажатием кнопки Вставить UserForm (Insert UserForm). В результате на экран выводится незаполненная форма с панелью инструментов Панель элементов (Toolbox) (рис. 1.7).

 

Рис. 1.7. Окно редактирования форм и панель инструментов Панель элементов

 

Используя панель инструментов Панель элементов из незаполненной формы, можно сконструировать любое требуемое для приложения диалоговое окно. Размещение нового управляющего элемента в форме осуществляется следующей последовательностью действий:

 

  1. Щелкните значок того элемента, который вы собираетесь разместить в форме.
  2. Поместите указатель мыши на то место, где будет располагаться управляющий элемент.
  3. Нажмите левую кнопку мыши и, не отпуская ее, растяните появившийся прямоугольник до требуемых размеров.
  4. Отпустите кнопку мыши. Элемент управления на нужном место создан.

 

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

 

Рис. 1.8. Команды меню Формат

 

Таким образом, можно копировать, вырезать и вставлять элементы управления, расположенные на поверхности формы. Для облегчения размещения и выравнивания элементов управления используется сетка. Активизировать ее можно с помощью вкладки Общие (General) диалогового окна Параметры (Options), вызываемого командой Сервис, Параметры(Tools, Options), там же устанавливается шаг сетки. Кроме того, команды меню Формат (Format) автоматизируют и облегчают процесс выравнивания элементов управления как по их взаимному местоположению, так и по размерам (рис. 1.8).

 

Окно свойств

В окне свойств перечисляются основные установки свойств выбранной формы или элемента управления. Используя это окно, можно просматривать свойства и изменять их установки. Для просмотра свойств выбранного объекта надо либо щелкнуть кнопку Окно свойств (Properties Window) либо выбрать команду Вид, Окно свойств (View, Properties Window) (рис. 1.9).

 

Рис. 1.9. Окно свойств

 

Окно свойств состоит из двух составных частей: верхней и рабочей. В верхней части окна свойств располагается раскрывающийся список, из которого можно выбрать любой элемент управления текущей формы или саму форму. Рабочая часть состоит из двух вкладок: По алфавиту (Alphabetic) и По категориям (Categorized), отображающие набор свойств в алфавитном порядке или по категориям. В обоих вкладках свойство Name (имя элемента управления) будет первым. Изменяются значения свойств одним из следующих способов:

 

  • Вводом с клавиатуры значения свойства в соответствующее поле.
  • Значения большинства свойств можно выбрать из раскрывающегося списка. Раскрывающийся список активизируется щелчком в соответствующем поле окна свойств.

 

Окно Просмотр объектов (Object Browser)

Окно Просмотр объектов (Object Browser) вызывается командой Вид, Просмотр объектов (View, Object Browser) или нажатием кнопки Просмотр объектов (Object Browser) (рис. 1.10). В этом окне приведен список всех объектов, которые имеются в системе и которые можно использовать при создании проекта.

 

Рис. 1.10. Окно Просмотр объектов

 

Окно Просмотр объектов (Object Browser) состоит из трех основных частей:

 

  1. Раскрывающегося списка Проект/Библиотека (Project/Library) в левом верхнем углу окна. В этом раскрывающемся списке можно выбрать различные проекты и библиотеки объектов. В частности, библиотеки объектов Excel, VBA, Office и VBAProject (объекты пользовательского проекта). Выбор в списке строки <Все библиотеки> (<Аll Libraries>) отображает список объектов всех библиотек.
  2. Списка Классы (Classes). После выбора из раскрывающегося списка Проект/Библиотека (Project/Library) просматриваемой библиотеки, например VBA, все классы объектов выбранной библиотеки выводятся в списке Классы (Classes).
  3. Списка Компоненты (Members). После выбора класса из списка Классы (Classes) просматриваемой библиотеки, например FileSystem, все компоненты выбранного класса выводятся в списке Компоненты (Members). При выделении строки в этом списке в нижней части окна Просмотр объектов (Object Browser) приводится дополнительная информация о выбранном компоненте. Кроме того, если нажать на кнопку Справка (Help), расположенную на панели инструментов в правой верхней части окна Просмотр объектов (Object Browser), то на экране отобразится окно Справочник Visual_Basic (Microsoft Visual Basic Help) с подробной информацией о выделенном компоненте.

Если вы устали изучать редактор VBA, то советую вам изучить лучшие программы для андроид на сайте http://www.fly-phone.ru/notes/android/luchshie-programmy-dlya-android/

Еще записи по теме

www.ikasteko.ru

Что такое VBE? Как запустить редактор VB? Что такое макрорекордер?

 

Visual Basic Editor (VBE) – это редактор Visual Basic, который представляет из себя компонент для создания, просмотра и редактирования как новых так и существующих модулей, содержащих программный код макросов и пользовательских форм. Инструментальными средствами редактора VB создаются пользовательские диалоговые окна, а также выполняются другие задачи, относящиеся к написанию и обслуживанию программ на языке программирования VBA.

Редактор VB содержит одни и те же возможности в Word, Excel и других приложениях пакета MS Office. Используя редактор VB в Word, фактически используется тот же редактор VB, который имеется в Excel, меняются только объекты, с которыми работает редактор. Visual Basic Editor используется для создания, просмотра, редактирования, экспорта и импорта модулей, сохраненных в каком-либо документе, шаблоне или рабочей книге (и программного кода макроса, который они содержат) а также для внесения в них разного рода изменений.

Запустить редактор VB можно одним из двух способов, либо через меню того приложения, в котором используется макрос (пункт меню различается в зависимости от версии используемого Вами пакета приложений Mircosoft Office), либо более универсальным способом, нажатием сочетания клавиш Alt+F11.

Макрорекордер (рекордер) – это средство записи действий пользователя с одновременным переводом их в программный код языка VBA. Воспроизведение записанного макроса программой ведет к выполнению каждой записанной рекордером команды точно в той последовательности, в которой их выполняли во время записи, включая все допущенные ошибки. Запуск макрорекордера осуществляется командой, расположение которой различается в зависимости от версии пакета Microsoft Office.

Независимо от того, в каком приложении Вы работаете, в Word или Excel, запись нового макроса осуществляется одним и тем же способом. Например в MS Office 2003 выбирается команда Сервис/Макрос/Начать запись, а в MS Office 2007 – Вид/Макросы/Запись макроса. И в Word и в Excel при этом отображается окно Record Macro (Запись макроса), которое используется для того, чтобы Вы могли присвоить имя новому макросу, определить место его сохранения, назначить ему сочетание клавиш для последующего быстрого запуска и внести описание макроса.

Принцип действия макрорекордера напоминает работу магнитофона. Нажатие одной кнопки приводит к записи действий пользователя. Нажатие второй кнопки приводит к остановке записи. Нажатие третьей кнопки приводит к проигрыванию записанного, то есть повторному выполнению той же последовательности действий.

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

Другие материалы по теме:

macros-vba.ru

Глава 5. Редактор Visual Basic к вашим услугам.. VBA для чайников

Глава 5. Редактор Visual Basic к вашим услугам.

В этой главе ...

~ Поиск команд в системе меню редактора Visual Basic

~ Отображение, перемещение и настройка панелей инструментов

~ Понимание и использование закрепления панелей инструментов и окон

~ Сражение с толпами окон редактора Visual Basic

~ Знакомство с комбинациями клавиш, используемыми редактором Visual Basic

~ Панорамный обзор YBA-проекта с помощью проводника проектов

~ Исследование объектов проекта с помощью обозревателя объектов

~ Печатание программного кода - и получение его готовым- в окне программного кода

Помните сцену из мультика. где Мики Маус играет ученика чародея? Волшебная метла, выполняющая всю домашнюю работу, поначалу кажется ему неплохой идеей, но довольно скоро выходит из-под контроля команда ведер, и бедный Мики едва не тонет.

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

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

В частности, я собираюсь достаточно подробно обсудить окна Project Explorer (Окно проводника проектов). Object Browser (Окно обозревателя объектов) и Code (Окно программного кода)- и не только внешний вид и управление ими. по и то, как их использовать в процессе программирования. Детальным обсуждением других окон, среди которых UserForm (Окно формы).

Properties (Окно свойств), а также четыре окна для отладки программы, мы займемся в главах 9 и 10. но в этой главе вы найдете вводную информацию и об этих окнах тоже.

Поделитесь на страничке

Следующая глава >

it.wikireading.ru