Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

2 семестр / Программирование на VBA

.pdf
Скачиваний:
209
Добавлен:
09.04.2015
Размер:
1.24 Mб
Скачать

15

TextBox2.Text = CStr(y) 'Для вывода результата в поле, переводим число

16

'в строковый формат при помощи функции CStr

17End Sub

18Private Sub UserForm_Initialize() 'Процедура UserForm_Initialize конструирует

19

'форму до ее загрузки

20

UserForm3.Caption= "Функцияy=sin(x)/(1+exp(x))" 'Инструкция устанавливает

21

'текст, отображаемый в строке заголовка формы

22Label1.Caption = "Аргумент" 'Инструкции задают видимые надписи

23Label2.Caption = "Значение функции" 'для объектов

24CommandButton1.Caption = "OK"

25TextBox2.Enabled = False 'Инструкция делает TextBox2 недоступным

26

'для пользователя

27

End Sub

Задание 6. Создайте форму, вычисляющую сложение, вычитание, умножение и деление двух чисел.

Для этого:

üвыберите команду Insert/UserForm (Вставка/UserForm);

üрасположите на форме следующие элементы управления (рис. 30):

TextBox1

TextBox2

Рис. 30

üформа создана, функция каждого элемента управления известна (имена:

Сложение – OptionButton1, Вычитание – OptionButton2, Умножение – OptionButton3, Деление – OptionButton4, Старт – Start, Label2 – Label2; Результат

иLabel2 – Font: начертание жирный, размер 10). Напечатайте код формы (листинг 23):

üЛистинг 23 Код формы UserForm4

1Private Sub Start_Click()

2If OptionButton1 = True Then

3Label2.Caption = CStr(CDbl(TextBox1.Text) + CDbl(TextBox2.Text))

4ElseIf OptionButton2 = True Then

5Label2.Caption = CStr(CDbl(TextBox1.Text) – CDbl(TextBox2.Text))

6ElseIf OptionButton3 = True Then

7Label2.Caption = CStr(CDbl(TextBox1.Text) * CDbl(TextBox2.Text))

8ElseIf OptionButton4 = True Then

121

9

If TextBox2.Text = "0" Then

10

MsgBox "Деление на ноль недопустимо"

11

Exit Sub

12End If

13Label2.Caption = Format(CStr(CDbl(TextBox1.Text) / _

14

CDbl(TextBox2.Text)), "0.00")

15Else

16MsgBox "Укажите арифметическое действие"

17End If

18End Sub

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

1.Что такое объект UserForm?

2.Какие свойства имеет объект UserForm?

3.Каким образом можно менять свойства формы?

4.Перечислите события, возникающие при открытии и закрытии форм и при работе элементов управления.

122

Литература

1.Программирование в пакетах MS Office: учеб. пособие / С.В. Назаров, П.П. Мельников, Л.П. Смольников и др.; под ред. С.В. Назарова. – М.: Финансы и статистика, 2007. – 656 с.: ил.

2.Бернд Вайланд. Visual Basic 6 для детей: Пер. с нем. – М.: АО

«Интерэксперт», 2002. – 240 с.

3.Мэтью Харрис. Освой самостоятельно программирование для Microsoft Excel 2000 за 21 день.: Пер. с англ.: уч. пос. – М.: Издательский дом «Вильямс», 2000. – 880 с.: ил. – Парал. тит. англ.

4.Стив Каммингс. VBA для «чайников».: Пер. с англ.: – М.: Издательский дом «Вильямс», 2000. – 384 с.: ил. – Парал. тит. англ.

5.К. Гетц, М. Джилберт. Программирование в Microsoft Office. Полное руководство по VBA: пер. с англ. – К.: Издательская группа BHV, 2000. – 768 с.

123

СОДЕРЖАНИЕ

 

Введение.......................................................................................................................

3

Часть 1. Макросы и язык программирования VBA. Среда редактора Visual

Basic ..............................................................................................................................

5

Лабораторная работа № 1. Запись новых макросов в Excel. Выполнение

макросов .......................................................................................................................

6

Часть 2. Редактирование простых макросов .......................................................

20

Лабораторная работа № 2. Использование инструмента Object Browser.

Сохранение и перенос модулей как текстовых файлов. Написание новых

макросов и процедур. Сообщения об ошибках во время написания,

редактирования или выполнения процедуры. Печать исходного кода...................

20

Часть 3. Типы данных, переменные и константы. Выражения в Visual

Basic. Использование функций Visual Basic.........................................................

38

Лабораторная работа № 3. Обзор типов данных VB. Переменные и константы.

Совместимость типов данных. Оператор присваивания. Арифметические и

логические операторы. Встроенные функции..........................................................

38

Часть 4. Изменения порядка выполнения операторов в VBA ..........................

67

Лабораторная работа № 4. Операторы условного и безусловного перехода.......

68

Часть 5. Повторение действий в VBA: циклы.....................................................

79

Лабораторная работа № 5. Операторы циклов......................................................

80

Часть 6. Массивы. Объекты VBA для ввода-вывода .........................................

88

Лабораторная работа № 6. Массивы. Свойства и методы объектов Range и

Selection ......................................................................................................................

88

Часть 7. Создание и использование функций и функций-процедур ................

99

Лабораторная работа № 7. Функции-процедуры и определенные

пользователем функции.............................................................................................

99

Часть 8. Элементы диалоговых окон..................................................................

105

Лабораторная работа № 8. Формы пользователя ................................................

105

Литература..............................................................................................................

123

Редактор Т.Л. Бажанова

 

Технический редактор А.А. Матеуш

 

Подписано в печать 05.09.08. Формат 60×84 1/16

 

Бумага офсетная. Гарнитура Таймс. Печать трафаретная.

 

Усл. печ. л. 7,8. Уч.-изд. л. 7,2

 

Тираж 163 экз. Заказ 125

 

Учреждение образования

 

«Могилевский государственный университет продовольствия»

 

212027, Могилев, пр-т Шмидта, 3

 

ЛИ № 02330/0131913 от 08.02.2007 г.

 

Отпечатано на ризографе редакционно-издательского отдела

 

учреждения образования

 

«Могилевский государственный университет продовольствия»

 

212027, Могилев, пр-т Шмидта, 3

 

ЛП № 226 от 12.02.2003 г.

 

124