- •1.Введение в программирование на vba Понятие объекта
- •Среда программирования
- •Типы данных
- •Переменные
- •Стандартные элементы управления. Объект Форма(UserForm) и элемент Кнопка(CommandButton)
- •Элемент Кнопка
- •Стандартные окна ввода и вывода сообщений
- •Окно сообщения
- •Окно ввода
- •Практические задания Задание 1.1
- •Задание 1.2
- •Задание 1.3
- •Задание 1.4
- •2.Реализация линейных алгоритмов Программирование арифметических выражений
- •Математические операции
- •Стандартные математические функции
- •Элементы Надпись(Label) и Поле(TextBox) Элемент Поле
- •Элемент Надпись
- •Практические задания Задание 2.1
- •Задание 2.2
- •Задание 2.3
- •3.Реализация алгоритмов с условиями Программирование условий Операторы сравнения
- •Логические операции
- •Инструкция If…Then…Else
- •Инструкция Select Case
- •Функции, используемые при программировании условий
- •Элементы Рисунок(Image), Счетчик и Полоса прокрутки(ScrollBar) Элемент Рисунок
- •Элемент Счетчик
- •Элемент Полоса прокрутки
- •Практические задания Задание 3.1
- •Задание 3.2
- •З адание 3.3
- •4.Реализация циклических алгоритмов Программирование циклов Цикл For…Next
- •Цикл Do While…Loop / Do…Loop While
- •Цикл Do Until...Loop / Do…Loop Until
- •Практические задания Задание 4.1
- •Задание 4.2
- •5.Использование процедур и функций в программах на vba Процедуры и функции
- •Элементы Рамка(Frame), Флажок(CheckBox), Переключатель(OptionButton), Выключатель(ToggleButton) Элемент Рамка
- •Элемент Флажок
- •Элемент Выключатель
- •Элемент Переключатель
- •Практические задания Задание 5.1
- •6.Использование структурированных типов данных на примере массивов Понятие массива. Работа с массивами
- •Практические задания Задание 6.1
- •Практические задания Задание 7.1
- •Задание 7.2
- •Задание 7.3
- •Задание 7.4
- •Задание 7.5
- •Задание 7.6
- •Задание 7.7
- •Задание 7.8
- •8.Работа с макросами в ms Excel Основные объекты ms Excel
- •Понятие макроса. Создание, редактирование, выполнение макросов
- •Цикл For Each
- •Инструкция With
- •Практические задания Задание 8.1
- •Задание 8.2
- •Задание 8.3
- •9.Создание приложений, управляемых с помощью диалоговых окон Элементы Поле со списком (ComboBox), Список (ListBox)
- •Практические задания Задание 9.1
- •Задание 9.2
- •10.Рекомендуемая литература
Окно ввода
Окно ввода создается функцией InputBox(), имеющей следующий синтаксис:
InputBox(prompt[, title] [, default] [, xpos] [, ypos] )
Окно содержит сообщение, указывающее какие данные должен ввести пользователь, поле текста для ввода данных и две кнопки ОК и Отмена, которые используются для подтверждения или отмены ввода данных. Закончив ввод данных, пользователь нажимает одну из кнопок. Если была нажата ОК, значением функции является текст, находящийся в поле ввода. Если была нажата Отмена, значением функции является пустая строка, независимо от того, что напечатал пользователь.
Параметры функции имеют следующий смысл:
prompt – строка сообщения, которая будет напечатана в окне;
title – строка, которая является заголовком окна. Если параметр не указан, то в качестве заголовка используется имя приложения;
default – строка, помещаемая в текстовое поле. Если параметр не указан, то поле текста будет пустым;
xpos – расстояние в твипах от левой границы экрана до левой границы окна. Если параметр не указан, окно центрируется по горизонтали;
ypos – расстояние в твипах от верхней границы экрана до верхней границы окна.
Окно ввода может иметь еще 2 необязательных параметра (helpfile и context) (см. Справку).
Для преобразования введенной строки в другой тип данных используйте функции преобразования типов: CCur(), CDate(), CInt(), CLng(), CSng(), CVar() и другие.
На рисунке ниже приведено окно, созданное с помощью инструкции: A = InputBox("Введите значение:", "Пример окна InputBox")
Практические задания Задание 1.1
С оздайте форму, которая предназначена для ввода и вывода значения переменной. Используйте стандартные окна ввода и вывода сообщений. На рисунке приведены вид вашей формы и вид окна сообщений, которое появилось в результате выполнения программы.
Добавьте к проекту новую форму. Поместите на форму три кнопки. Для выравнивания размеров и размещения кнопок на форме воспользуйтесь командами меню Формат, предварительно выделив все кнопки (используйте клавишу Shift). Измените значения свойств Caption у кнопок и формы. Напишите процедуры обработки события Click для кнопок. Текст приведен ниже:
Dim X As String
Private Sub CommandButton1_Click()
X = InputBox("Введите значение")
End Sub
Private Sub CommandButton2_Click()
MsgBox X
End Sub
Private Sub CommandButton3_Click()
UserForm1.Hide
End Sub
Для того чтобы можно было вызывать форму с рабочего листа, разместите на рабочем листе кнопку. Для этого выведите на экран с помощью команды Вид\ Панели инструментов\ Элементы управления панель инструментов Элементы управления. Поместите кнопку в любое место рабочего листа. Откройте окно свойств с помощью контекстного меню или кнопки на панели Элементы управления, и измените надпись на кнопке (свойство Caption). Выполните двойной щелчок на кнопке, вы попадете в процедуру обработки события Click для этой кнопки. Обратите внимание, что процедура находится в модуле того листа, куда вы поместили кнопку. Если имя вышей формы UserForm1, то добавьте в эту процедуру следующую строку: UserForm1.Show
Перейдите на лист с кнопкой, и выйдите из режима конструктора (используйте кнопку на панели инструментов Элементы управления). Проверьте работу программы.