Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование на VB_.pdf
Скачиваний:
18
Добавлен:
15.03.2016
Размер:
654.41 Кб
Скачать

Основы программирования в среде Visual Basic for Application (Excel 2010)

Оглавление.

 

Тема 1. Объекты, свойства, события ................................................................................................................

2

1.1. Знакомство с Visual Basic for Application (Excel) .................................................................................

2

Задание 1.1........................................................................................................................................................

11

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

11

1.2. Свойства формы ........................................................................................................................................

13

Краткая справка................................................................................................................................................

13

Задание 1.2........................................................................................................................................................

13

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

14

Unload Me .........................................................................................................................................................

14

Set frmColor = Nothing......................................................................................................................................

14

Усовершенствование программы. ...................................................................................................................

15

cmdColor.Caption = "Белый" ............................................................................................................................

15

Освоение режима отладки. ..............................................................................................................................

15

Контрольное задание .......................................................................................................................................

15

Контрольные вопросы......................................................................................................................................

15

Задание для закрепления полученных знаний. ...............................................................................................

15

3. События формы............................................................................................................................................

16

Краткая справка................................................................................................................................................

16

Задание 1.3........................................................................................................................................................

16

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

17

Этап 1. Знакомства с событиями Click и KeyPress..........................................................................................

17

Этап 2. Освоение режима отладки...................................................................................................................

18

Контрольное задание. ......................................................................................................................................

18

Контрольные вопросы......................................................................................................................................

18

Задание для закрепления полученных знаний. ...............................................................................................

18

Тема 2. Стандартные типы данных .................................................................................................................

18

2.1. Строковые переменные.............................................................................................................................

18

Основная цель ..................................................................................................................................................

18

Краткая справка................................................................................................................................................

19

Строковые переменные....................................................................................................................................

19

Диалоговые функции .......................................................................................................................................

20

Окно сообщения...............................................................................................................................................

20

Окно ввода........................................................................................................................................................

20

Задание 2.1........................................................................................................................................................

20

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

20

Контрольное задание. ......................................................................................................................................

21

Контрольные вопросы......................................................................................................................................

21

Задание для закрепления знаний закрепления знаний....................................................................................

21

2.2. Целые переменные ....................................................................................................................................

22

Основная цель задания.....................................................................................................................................

22

Краткая справка................................................................................................................................................

22

Задание 2.2........................................................................................................................................................

22

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

22

Контрольное задание .......................................................................................................................................

23

Контрольные вопросы......................................................................................................................................

23

Задание для закрепления знаний. ....................................................................................................................

24

2.3. Вещественные переменные. ......................................................................................................................

24

Основная цель задания.....................................................................................................................................

24

Краткая справка................................................................................................................................................

24

Задание 2.3........................................................................................................................................................

25

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

25

Усков Ю.И., Катеринина С.Ю.

1

каф. МиИТ, нояб.2015

Основы программирования в среде Visual Basic for Application (Excel 2010)

Контрольное задание .......................................................................................................................................

26

Контрольные вопросы......................................................................................................................................

26

Задание для закрепления знаний .....................................................................................................................

26

2.4. Переменные типа дата/время....................................................................................................................

26

Основная цель задания.....................................................................................................................................

26

Краткая справка................................................................................................................................................

27

Задание 2.4........................................................................................................................................................

27

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

27

Контрольное задание .......................................................................................................................................

29

Контрольные вопросы......................................................................................................................................

29

Задание для закрепления знаний .....................................................................................................................

29

2.5. Область видимости переменных...............................................................................................................

29

Основная цель задания.....................................................................................................................................

29

Краткая справка................................................................................................................................................

29

Задание 2.5........................................................................................................................................................

30

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

30

Контрольное задание .......................................................................................................................................

31

Контрольные вопросы......................................................................................................................................

31

Задание для закрепления знаний .....................................................................................................................

31

3.1. Условный оператор IF THEN....................................................................................................................

31

Основная цель задания.....................................................................................................................................

31

Краткая справка................................................................................................................................................

32

Задание 3.1........................................................................................................................................................

32

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

32

Контрольные вопросы......................................................................................................................................

34

Задание для закрепления знаний .....................................................................................................................

34

Номер счета. .....................................................................................................................................................

34

Баланс на начало месяца. .................................................................................................................................

34

Общая сумма расходов в данном месяце. .......................................................................................................

34

Общая сумма кредитов, полученных в данном месяце...................................................................................

34

Предельный размер кредита в универмаге......................................................................................................

34

Новый баланс = начальный баланс + расходы - кредиты. ..............................................................................

34

3.2. Условный оператор IF...THEN ... ELSEIF ... END IF................................................................................

34

Основная цель задания.....................................................................................................................................

34

Краткая справка................................................................................................................................................

34

Задание 3.2........................................................................................................................................................

35

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

35

Контрольные вопросы......................................................................................................................................

36

Задание для закрепления знаний .....................................................................................................................

37

3.3. Условный оператор SELECT CASE... END SELECT...............................................................................

37

Основная цель задания.....................................................................................................................................

37

Краткая справка................................................................................................................................................

37

Случайные числа..............................................................................................................................................

38

Тема 1. Объекты, свойства, события

1.1. Знакомство с Visual Basic for Application (Excel)

1. Познакомиться с основными окнами и командами основных меню Visual Basic for Application в среде Excel.

Усков Ю.И., Катеринина С.Ю.

2

каф. МиИТ, нояб.2015

Основы программирования в среде Visual Basic for Application (Excel 2010)

2.Познакомиться с формой и управляющими элементами: CommandButton и Label.

3.Познакомиться с событием Click для элемента кнопки CommandButton.

1.Этап. «Вход в среду программирования Excel».

На этом этапе с помощью нажатия совокупности клавиш Alt+F11 в среду Visual Basic for Application и ее пользовательского интерфейса.

2

3

4

3

5

 

 

 

 

 

 

F4

Нажатие на вкладку Insert выводит окно 2 ,

 

 

 

 

 

 

позволяющее выбрать основные элементы Visual

 

 

 

Basic для вставки, которые должны обеспечить

 

 

 

взаимодействие программы с пользователем. С

 

 

 

помощью окна свойств 3

задаются значения

свойствам управляющих элементов, помещенным ранее на форму.

исходного кода».

Когда скелет приложения готов, остается нарастить на него мышцы в виде исходного кода функций, который записывается в шаблон окна про-

цедуры, вызываемого щелчком на элементе Procedure контекстного окна 2 вкладки Insert.

Public Sub МояПодпрограмма()

End Sub

3. Этап «Получение исполняемого файла».

Проект, вызываемый кнопкой 4 является основной структурой программы, организующей функции Visual Basic в нечто целое.

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

Усков Ю.И., Катеринина С.Ю.

3

каф. МиИТ, нояб.2015

Основы программирования в среде Visual Basic for Application (Excel 2010)

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

F2

Окно просмотра объектов, так называемый

 

браузер объектов, вызывается кнопкой 5

Окно UserForm

Форма — основной элемент Visual Basic. Любое приложение, обладающее пользовательским интерфейсом с размещенными на нем всех прочих управляющих элементов, называется формой. Свойства формы вызы-

ваются кнопкой и приводятся в одноименном окне.

Заголовком (или строкой заголовка) называется цветная полоса в верхней части большинства форм. Заголовок используется для перетаскивания окна по экрану. Название — текст, выводимый в заголовке формы. Название задается свойством Caption. Имя

формы (свойство Name) рекомендуется начинать с префикса frm.

Форма позволяет создавать окна или диалоговые окна в Вашем проекте. Вы перетаскиваете на форму нужный элемент управления из Комплекта инструментов

(Toolbox).

Впроцессе создания формы:

·Каждое окно формы имеет кнопки Maximize, Minimize и Close.

·Вы можете просмотреть сетку формы и определить размер ее ячеек из вкладки General диалогового окна Options.

·Используйте кнопки Комплекта инструментов (Toolbox), чтобы перетаскивать элементы управления на форму. Вы можете выравнивать свои элементы управления по сетке создаваемой формы, используя вкладку диалогового ок-

на Options.

Элемент управления CheckBox

Показывает состояние активности элемента, определенного текстовым сообщением данного элемента управления.

Используйте CheckBox, чтобы осуществить выбор между двумя значениями, такими как

Да/нет, Истина/Ложь, или Вкл\Выкл. Когда пользователь выбирает CheckBox, то показывается специальный маркер (такой как X), и его текущую установку: Да, Правда или Включено; если пользователь не выбирает

Усков Ю.И., Катеринина С.Ю.

4

каф. МиИТ, нояб.2015

Основы программирования в среде Visual Basic for Application (Excel 2010)

CheckBox, т.е. окно пустое, и его установку Нет, Ложь или Отключено. В зависимости от значения свойства TripleState у CheckBox может также быть значение null.

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

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

Свойство по умолчанию CheckBox - свойство Значения. Событие по умолчанию CheckBox - событие Щелчка.

На заметку!

ListBox также позволяет Вам помещать галочку у выбранных вариантов. В зависимости от Вашего приложения Вы можете использовать ListBox вместо CheckBox.

Событие по умолчанию ToggleButton - событие Change.

Элемент Command Button (Кнопка)

Кнопки используются для решения самых разных задач - от простейшего ввода информации до вызова специальных функций, связанных с формами. Имя элемента (свойство Name) рекомендуется начинать с префикса cmd.

Элемент управления Frame

Создает функциональную и визуальную группу элементов управления.

Все кнопки выбора в Frame взаимно исключаемы, таким образом Вы можете ис-

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

вать Frame , чтобы сгруппировать название, адрес и номер счета клиентов.

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

Элемент управления Image

Показывает картинку на форме.

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

Усков Ю.И., Катеринина С.Ю.

5

каф. МиИТ, нояб.2015

Основы программирования в среде Visual Basic for Application (Excel 2010)

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

Image поддерживает следующие форматы файла: *.bmp

*.cur *.gif *.ico *.jpg *.wmf

На заметку!

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

Событие по умолчанию для Image - событие Щелчок.

Элемент управления Label (Надпись или Этикетка)

Показывает описательный текст. Надпись используется для вывода текста. Главная особенность надписи заключается в том, что пользователь не может изменить текст надписи по своему усмотрению (хотя его можно изменить как свойство Caption во время выполнения программы). Самое важное свойство надписи — Caption. Имя элемента (свойство Name) рекомендуется начинать с префикса lbl. Элемент управления Label на форме показывает текст типа названия, заголовка, картинки или краткие инструкции. Например, labels для записной книжки могли бы включать Label с названиями улиц или городов. Label не показывает значения из источников данных или выражений; текст Label всегда свободен и не изменяется при перемещении от записи к записи.

Свойство по умолчанию для Label - свойство Caption. Событие по умолчанию для Label - событие Щелчок.

Элемент управления ListBox

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

Если ListBox связан с источником данных, то ListBox сохраняет выбранное значение в этом источнике данных.

ListBox может или появиться как список или как группа средств управления OptionButton или средств управления CheckBox.

Свойство по умолчанию для ListBox

- свойство Value.

Событие по умолчанию для ListBox

- событие Щелчка.

На заметку!

Вы не можете перетаскивать текст в развернутый ListBox.

Усков Ю.И., Катеринина С.Ю.

6

каф. МиИТ, нояб.2015

Основы программирования в среде Visual Basic for Application (Excel 2010)

MultiPage - многостраничный элемент управления

Представляет многократные экраны информации как единый набор.

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

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

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

На заметку!

MultiPage - контейнер коллекции Страниц, каждая из которых содержит один или более объектов Страницы.

Свойство по умолчанию для MultiPage - свойство Value, которое возвращает индекс в настоящее время активной Страницы в коллекции Страниц MultiPage. Событие по умолчанию для MultiPage - событие Change.

Элемент управления OptionButton

Показывает статус выбора одного элемента в группе выборов.

Используйте OptionButton, чтобы показать, выбран ли единственный элемент в группе. Отметим, что каждый OptionButton в Frame взаимно исключаемый. Если элемент OptionButton связан с источником данных, OptionButton может по-

казать значение того источника данных или как Да/Нет, Истина/Ложь или Вкл\Выкл. Если пользователь выбирает OptionButton, текущее установку Да, Истина или Вкл; если пользователь не выбирает OptionButton, то устанавливается Нет, Ложь или Выкл. Например, OptionButton в приложении, отслеживающем наличие инвентаря может показывать, имеется ли на складе данный инвентарь. Если OptionButton связан с источником данных, то изменение его параметров настройки изменяет значение этого источника данных. Отключенные OptionButton затемнены и не показывают значения.

В зависимости от значения свойства TripleState у OptionButton может также быть пустым значением.

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

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

Свойство по умолчанию для OptionButton - свойство Значение. Событие по умолчанию для OptionButton - событие Щелчок.

Усков Ю.И., Катеринина С.Ю.

7

каф. МиИТ, нояб.2015

Основы программирования в среде Visual Basic for Application (Excel 2010)

Элемент управления ScrollBar

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

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

Чтобы использовать ScrollBar для установки или прочтения значений другого элемента управления, Вы должны написать код для событий и методов ScrollBar. Например, чтобы использовать ScrollBar для обновления значения TextBox, Вы можете написать код, который считывает свойство Value ScrollBar и затем устанавливает свойство Value TextBox.

Свойство по умолчанию для ScrollBar - свойство Value. Событие по умолчанию для ScrollBar - событие Change.

На заметку!

Чтобы создать горизонтальную или вертикальную полосы ScrollBar, протяните горизонтально или вертикально ручки калибровки ScrollBar вдоль формы.

Элемент управления SpinButton

Увеличивает и уменьшает значения чисел.

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

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

SpinButton, чтобы просмотреть диапазон значений или список элементов, или изменить значение, показанное в текстовом блоке.

Чтобы показать значение, обновляемое SpinButton, Вы должны присвоить значение SpinButton выведенной части элемента управления, такое как свойство Caption Label или свойство Текст в TextBox. Чтобы создать горизонтальную или вертикальную полосы ScrollBar, протяните горизонтально или вертикально ручки калибровки ScrollBar вдоль формы.

Следующий пример использует SpinButton, чтобы выводить нужное число строк в раскрывающемся списке строк ComboBox.

Усков Ю.И., Катеринина С.Ю.

8

каф. МиИТ, нояб.2015

Основы программирования в среде Visual Basic for Application (Excel 2010)

Вначале создадим форму с именем frmSpinButton и разместим на ней управляю-

щий элемент SpinButton, поименованный как SpinButton1, элемент ComboBox, поименованный как ComboBox1 и элемент Label, поименованный как Label1.

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

Обратим внимание, что шаблоны пустых подпрограмм определяются левой и пра-

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

Усков Ю.И., Катеринина

2015

Основы программирования в среде Visual Basic for Application (Excel 2010)

Составное имя процедуры автоматически образуется объединением этих названий с помощью знака подчеркивания «_». Тело процедуры, определяющее результат срабатывания данного управляющего элемента, заполняется разработчиком подпрограммы.

Результат выполнения запущенных обеих подпрограмм приведен на рисунке слева.

Свойство по умолчанию для SpinButton - свойство

Value.

Событие по умолчанию для SpinButton - событие

Change.

Элемент управления TabStrip

Представляет ряд связанных средств элементов управления, таких, как визуальная группа.

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

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

На заметку!

TabStrip осуществлен как контейнер коллекции Закладок, которая в свою очередь содержит группу объектов типа Закладка.

Свойство по умолчанию для TabStrip - свойство SelectedItem. Событие по умолчанию для TabStrip - событие Change.

Элемент элемента управления TextBox

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

Обеспечивает возможность ввода текста пользователем. В период выполнения: всё ограничивается чтением и записью его свойства Text. Имя элемента (свойство Name) рекомендуемся начинать с префикса txt.

Форматирование, относящееся к любой части текста в TextBox, затрагивает весь текст в контроле. Например, если Вы измените шрифт или размер элемента какогонибудь символа в элементе управления, то изменение затронет все символы в нем. Свойство по умолчанию для TextBox - свойство Value.

Усков Ю.И., Катеринина С.Ю.

10

каф. МиИТ, нояб.2015