Что означает команда toolbox в visual basic

Окно панели элементов управления (Toolbox)

Инструменты и средства управления на панели элементов управления служат для того, чтобы создавать новые элементы пользовательского интерфейса. Любое окно этого интерфейса содержит различные объекты: командные кнопки, текстовые окна, ярлыки (этикетки), переключатели и т.д. Все они называются Controls (элементами управления). Эти элементы добавляются в формы путем перетаскивания их с панели элементов управления в поле формы, указанных на рисунке 10.

Рисунок 10 – Окно инструментов

После того, как элементы управления внесены в форму, они становятся объектами или программируемыми элементами пользовательского интерфейса.

Имеется возможность расширения средств управления, представленных на панели управления. Для этого нужно выбрать команду Tools→Additional Controls (Сервис→Дополнительные элементы) и в появившемся диалоговом окне выбрать нужное средство управления.

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

34. Встроенные диалоговые окна в VBA. Окно сообщений (вывода) MsgBox: назначение, синтаксис функции и оператора, константы процедуры. Окно ввода InputBox: назначение, синтаксис функции. Примеры.

В проектах VBA часто встречаются две разновидности встроенных диалоговых окон: окна сообщений и окна ввода.

Окна сообщений (MsgBox)

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

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

Отобразить окно сообщения можно с помощью оператора MsgBox или функции MsgBox (). Разница между ними заключается в том, что функция отображает окно сообщения и возвращает некоторое значение, а оператор только отображает окно сообщения.

Синтаксис оператора MsgBox:

MsgBox <Строковое выражение> [ , целая константа] [ , строковое выражение]

Синтаксис функции MsgBox ():

Переменная = MsgBox (Строковое выражение [ , целая константа]

переменная – переменная целого типа, которой присваивается значение, возвращаемое функцией MsgBox ();

MsgBox – имя оператора/функции;

строковое выражение — строковое выражение, которое будет отображаться в поле сообщения окна сообщения (заключается в кавычки);

целая константа – или группа констант, определяющая, какие кнопки (комбинации кнопок) и пиктограммы будут отображаться в окне сообщения;

строковое выражение – строковое выражение, которое будет отображаться в строке заголовка окна сообщения (заключается в кавычки);

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

Таблица 27 — Константы процедуры MsgBox, определяющие отображаемые информационные значки в диалоговом окне

Пиктограмма Имя пиктограммы Константа Назначение
vbCritical Critical message (Критическое сообщение) Указывает, что произошла серьезная ошибка. Часто после такого сообщения программа прекращает работу
vbExclamation Warning message (Предупреждение) Сообщает о возникновении ошибки, которая требует исправления или может привести к нежелательным последствиям
vbQuestion Query (Запрос) Указывает, что для продолжения работы программе требуется дополнительная информация от пользователя
vbInformation Information message (Информационное сообщение) Информирует пользователя о состоянии программы. Чаще всего используется для сообщения о завершении выполнения некоторой задачи.

В функции MsgBox () можно использовать шесть наборов кнопок, задаваемых константами в соответствии с таблицей 28. Значение константы в соответствии с выбранным набором кнопок принимает аргумент Options.

Таблица 28 — Константы процедуры MsgBox, определяющие отображаемые кнопки в диалоговом окне

Набор кнопок Значение Константа
<OK> vbOKOnly
<ОК>, <Отмена> vbOKCancel
<Стоп>, <Повтор>, <Пропустить> vbAbortRetryIgnore
<Да>, <Нет>, <Отмена> vbYesNoCancel
<Да>, <Нет> vbYesNo
<Повтор>, <Отмена> vbRetryCancel

Если требуется поместить в окно пиктограмму и набор кнопок, то аргумент Options набирается, как две константы, соединенные знаком «+». Первая константа выбирается из таблицы 27, вторая – из таблицы 28. Если используется несколько кнопок, то можно указать, какая из них будет кнопкой команды по умолчанию, т.е. кнопкой, которая сработает при нажатии клавиши [Enter] (кнопка, получающая фокус при отображении окна сообщения). В этом случае в аргумент Options добавляется третья константа в соответствии с таблицей 29.

Каждая из кнопок диалогового окна после щелчка на ней мышью во время выполнения программы возвращает соответствующее ей значение переменной (таблица 30).

Таким образом, имеется возможность программного определения, какая из кнопок диалогового окна нажата, и в соответствии с этим выполнить то или иное действие.

Таблица 29 — Константы процедуры MsgBox, определяющие основную кнопку в диалоговом окне

Кнопка команды по умолчанию Значение Константа
Первая vbDefaultButton1
Вторая vbDefaultButton2
Третья vbDefaultButton3
Четвертая vbDefaultButton4

Таблица 30 — Значения, возвращаемые функцией MsgBox

Кнопка Значение Константа
<OK> vbOK
<Отмена> vbCancel
<Стоп> vbAbort
<Повтор> vbRetry
<Пропустить> vbIgnore
<Да> vbYes
<Нет> vbNo

Постановка задачи. Создать окно информационного сообщения с заголовком «Окно» и текстом «Нажмите кнопку» с пиктограммой информационного сообщения и с двумя кнопками <Да> и <Нет>. При нажатии кнопки <Да> надпись на командной кнопке <Command1> формы требуется заменить на значение Да, а при нажатой кнопки <Нет> на значение Нет.

Технология выполнения задания:

1 Запустить VBA.

2 В проект добавить форму. На панели инструментов выбрать элемент CommandButton и поместить на поле формы. Появится командная кнопка <CommandButton1>.

3 Дважды щелкнуть на командной кнопке <CommandButton1> и в окне программного кода между строками Private Sub и End Sub набрать следующие утверждения:

Private Sub CommandButton1_Click()

A = MsgBox ("Нажмите кнопку", vbInformation + vbYesNo, "Окно")

ElseIf A = 7 Then

В первой строке функция MsgBox выводит на экран диалоговое окно с текстом «Нажмите кнопку», двумя кнопками <Yes> и <No> и заголовком окна «Окно».

Вторая строка проверяет возвращаемое значение переменной А на его равенство числу 6.

Если условие выполняется, то это означает, что нажата кнопка <Yes>, и тогда в третьей строке свойству Caption (Надпись) командной кнопки <CommandButton1> присваивается значение Да.

Если возвращаемое значение не равно 6, то четвертая строка проверяет его на значение, равное 7, поскольку при нажатии кнопки <No>, возвращаемое значение А равно 7.

Если А действительно равно 7, то в пятой строке надписи на командной кнопке присваивается значение Нет.

Шестая строка закрывает условный оператор.

4 Запустить программу и проверить ее работоспособность, как показано на рисунке 35.

Рисунок 35 – Проверка работоспособности программы

Окна ввода

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

Она выводит на экран диалоговое окно, содержащее сообщение, после ввода и две кнопки ОК и Cancel.

Устанавливает режим ожидания ввода текста пользователем и нажатия кнопки <ОК> или <Отмена>,

Если пользователь выбрал <ОК>, окно ввода возвращает значение типа String, находящийся в поле ввода.

Если же пользователь выбрал <Отмена>, окно ввода возвращает пустую строку (Empty) независимо от того, что напечатал пользователь.

Строковая переменная = InputBox (Строковое выражение [, константа заголовка] [, константа поля ввода] [, xPos] [, yPos])

Строковая переменная – переменная, в которой хранится значение,

возвращаемое функцией InputBox ();

InputBox – имя функции;

строковое выражение – выражение, которое будет отображаться в области

сообщения окна ввода;

константа заголовка – строковая константа или переменная, значение

которой будет отображаться в заголовке окна ввода;

константа поля ввода – строковая константа или переменная, значение

которой будет отображаться в поле ввода;

xPos, yPos – положение окна ввода соответственно по

горизонтали и вертикали (в твипах).

Постановка задачи. Иллюстрация использования окна ввода.

Технология выполнения задания:

1 Запустить VBA.

2 В проект добавить форму. На панели инструментов выбрать элемент CommandButton и поместить на поле формы. Появится командная кнопка <CommandButton2>.

3 Щелкнуть мышью дважды на командной кнопке <CommandButton2> и в окне программного кода между строками Private Sub и End Sub набрать следующие утверждения:

Private Sub CommandButton2_Click()

A = InputBox ("Введите информацию", "Окно ввода")

CommandButton2.Caption = "Строка ввода пуста"

Первая строка отображает окно ввода и присваивает возвращаемое значение переменной А.

Вторая строка проверяет содержимое поля ввода.

Если в поле набраны какие-либо данные, т.е. строка ввода непустая, то утверждение третьей строки после нажатия кнопки <OK> меняет название кнопки <CommandButton2> на содержимое введенных данных.

В противном случае (строка 4) в пятой строке <CommandButton2> присваивается значение Строка ввода пуста.

4 Запустить программу и проверить ее работоспособность, как показано на рисунке 36.

Знакомство с редактором VBA

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

редактор vba excel, word и так далее

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

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

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

Окно проектов vba

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

Окно свойств vba объектов

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

Редактор vba кода

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

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

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

Компоненты меню редактора visual basic for applications

Тут мы рассмотрим те пункты меню 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 и его составные.

Спасибо за внимание. Автор блога Владимир Баталий

Редактор Visual Basic

Редактор Visual Basic позволяет записывать, сохранять и модифицировать программные модули, выполнять и отлаживать процедуры.

В среду редактора VBA можно перейти

  • командой Сервис-Макрос-Редактор Visual Basic,
  • нажав кнопкуна панели инструментов Visual Basic
  • с помощью функциональные клавишей Alt+F11.

Возврат в рабочую книгу MS Excel из редактора VBA выполняется

  • командой Microsoft Excel — последней командой меню Вид,
  • нажатием на кнопкустандартной панели инструментов Visual Basic
  • клавишами Alt+F11 или Alt+Q.
  • Документ MS Excel представляет собой рабочую книгу, содержащую рабочие листы с данными различных типов и формулами, листы диаграмм и программы для обработки данных.
  • Программные компоненты документа (модули, процедуры, формы) объединяются в проект, который сохраняется на диске вместе с документом.
  • Проект на VBA нельзя создать независимо от документа. Каждой рабочей книге соответствует проект с именем, состоящим из двух частей: VBAProject и названия книги в скобках. Такое имя присваивается проекту по умолчанию

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

Project Window (окно проекта)

Структура проекта видна в окне проекта редактора Visual Basic ( рис. 2.1). Основное предназначение окна проекта — обеспечение навигации в проекте.

Окно проекта

Структура проекта имеет вид дерева. Элементы структуры могут быть свернуты или расширены нажатием на пиктограммы "+" или "-", расположенные слева от папок, составляющих проект.

Показать окно проекта можно при помощи:

  • нажатия на кнопкупанели инструментов пиктографического меню
  • команды Project Explorer меню View
  • клавишей Ctrl+R.

Первоначально проект содержит только одну папку с объектами документа — Microsoft Excel Objects.

По мере разработки пользовательского приложения добавляются

  • папка Формы (Forms), содержащая строки для каждой формы, созданной пользователем . Это диалоговые окна пользователя — объекты Userform.
  • папка Модули (Modules) со стандартными пользовательскими модулями, не связанными с конкретными объектами или формами.
  • папка Модули класса (Classes) с модулями, определяющими пользовательские классы.
  • папка Ссылки (References) со ссылками на другие проекты.

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

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

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

  • двойным щелчком на выбранный объект проекта
  • нажатием клавиши F7 на выделенный объект проекта
  • выбором команды Code из меню View или из контекстного меню для выделенного объекта проекта.

Стандартные модули содержат:

  • процедуры общего типа,
  • процедуры-функции, разработанные пользователем,
  • процедуры, записанные макрорекордером .

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

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

Процедура — это последовательность команд (операторов языка), начинающаяся с оператора Sub и заканчивающаяся оператором End Sub.

Все операторы, которые заключены между этими двумя операторами, составляют тело процедуры .

После записи оператора начала процедуры вручную и нажатия клавиши Enter конец процедуры записывается автоматически.

Для вставки процедуры установите точку вставки в тело модуля и выполните команду Procedure (Процедура) из меню Insert (Вставка).

  • Любую процедуру, расположенную в стандартном модуле, можно запускать из диалогового окна Макрос, содержащего перечень доступных для запуска процедур (см. "Использование макрорекордера. Абсолютные и относительные ссылки"рис. 1.5).
  • Процедуры, расположенные на процедурных листах, связанных с объектами рабочей книги или пользовательскими формами, не доступны в этом окне.
Properties Window (Окно свойств)

Окно свойств показывает и позволяет изменять свойства объекта, выделенного в окне проекта или в окне формы. Для вызова окна свойств используйте клавишу F4 или пиктограмму

Окно свойств объекта Module1

Если выделен стандартный модуль или проект ( рис. 2.2), то высвечивается его единственное свойство — Name (имя). Если же выделен, например, объект Userform, то в окне свойств показана таблица с перечнем его свойств.

Изменение свойства Name приводит к изменению имени объекта, под которым этот объект известен всем процедурам проекта.

Свойства объектов можно изменять в режиме конструктора ( Design time ) или в режиме выполнения процедуры ( Run time ). Некоторые свойства объектов можно изменять в любом режиме, а отдельные свойства подлежат изменению только в режиме конструктора или только в режиме выполнения процедуры. Если свойства объектов изменяются в режиме выполнения процедуры, то они никогда не видны в окне свойств объекта.

Code (окно программы)

Окно открывается при выполнении команды Code (Программа) из меню View или при нажатии клавиши F7. Можно нажать кнопку View Code( рис. 2.2) или сделать двойной щелчок на имени модуля, объекта рабочей книги или формы.

Меню и панели инструментов Visual Basic

При переходе в редактор VB меняется меню и появляется стандартная панель инструментов Visual Basic.

Пиктограммы отладки программ расположены на отдельной панели инструментов, которая высвечивается командой View-Toolbars-Debug.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *