Лабораторная работа 1.
Знакомство со средой VB.
Объекты управления TextBox, Label, CommandButton.
Свойства объектов, события.
Знакомство со средой VBA.
ПРОГРАММИРОВАНИЕ VBA
Загрузить VB. (Ярлык на рабочем столе компьютера)
Ознакомиться с окнами:
Окно объектов управления (Меню-View-ToolBox)
Окно проекта (Меню-View-Project Exporer)
Окно свойств (Меню –View-Properties Window)
Разместить на форме объекты и изменить их свойства согласно таблице:
выделяем объект (щелчок мышью на объекте)
выделяем нужное свойство
изменяем значение свойства
Задание №1. Знакомство с интерфейсом. Разработка простейшей формы по прилагаемому образцу.
Студент сдавал во время сессии экзамен по четырем предметам: физике, математике, информатике и физкультуре. Создать форму для вычисления среднего балла успеваемости студента за сессию. Данные вводить с клавиатуры в текстовые поля, результаты вычислений выводить в текстовое поле.
Порядок работы:
Уточните состав задач программы.
Программа должна обеспечивать ввод данных с клавиатуры в текстовые поля и вывод данных в текстовое поле. Кроме того, на форму надо поместить элементы управления для управления процессом вычисления и выхода из программы.
Разработайте математическую модель для вычисления среднего балла за сессию: средний балл равен сумме оценок по предметам обучения, деленной на число этих оценок:
СрБалл=(Физика+Математика+Информатика+Физкультура)/4
Опишите переменные (табл.1).
Р азработайте интерфейс программы. Изобразите форму и определите состав элементов управления и их размещение на форме (Рис.1).
Здесь “Успеваемость” - название формы. “Введите оценки по предметам обучения”, “Физика”, “Математика”, “Информатика”, ”Физкультура”, “Средний балл” – надписи. Белые прямоугольники - поля ввода. Ввод и Выход - кнопки. Кнопка Ввод служит для выполнения расчетов, а кнопка Выход – для очистки полей ввода и завершения работы.
4. Выполним описание элементов интерфейса.
Описание свойств элементов управления выполним в соответствии с табл. 2
Таблица 1.
Описание переменных
Наименование программы ______________ |
Тема проекта: Успеваемость |
Лист ________ |
|
Листов _______ |
|||
Обозначение переменной |
Имя переменной |
Тип |
Примечание |
Физика |
F |
Целая |
Оценка по физике |
Математика |
M |
Целая |
Оценка по математике |
Информатика |
INF |
Целая |
Оценка по информатике |
Физкультура |
FIZ |
Целая |
Оценка по физкультуре |
SB |
SB |
Вещественная |
Средний балл |
Таблица 2
Описание свойств элементов управления формы “Успеваемость”
Тип элемента |
Элемент |
Свойство |
Значение |
|
Форма |
Forma1 |
Name Caption |
frmForm1 Успеваемость |
|
Надпись (метка)
|
Label 1 |
Name Caption
Alignment |
lblText Введите оценки по предметам обучения 2 |
|
|
Label 2
|
Name Caption Alignment |
lblFizika Физика 2 |
|
|
Label 3
и т. д. |
Name Caption Alignment |
lblMatematika Математика 2
|
|
Поле ввода |
Text 1
|
Name Caption Alignment |
txtFiz Пусто 1 |
|
|
Text 2
и т. д. |
Name Caption Alignment |
txtMat пусто 1
|
|
Командная кнопка |
Command1
|
Name Caption Alignment |
cmdOK OK 2 |
|
|
Command2
|
Name Caption Alignment |
cmdEnd Выход 2 |
Запишите в обработчики событий Click кнопок Ввод и Выход тексты программ для этих кнопок:
Private Sub CmdOK_Click ()
F = Val (txtFiz.Text)
М = Val(txtMat.Text)
INF = Val(txtInf.Text)
FIZ = Val(txtFizkult.Text)
SB = (F + М + INF + FIZ)/4
txtSredBall = Str(SB)
End Sub
-----------------------------------------------------------------------------
Private Sub сmdEnd_Click()
End
End Sub
Примечание: для переноса длинной строки на другую строку необходимо вставить пробел и символ подчеркивания.
6. Порядок разработки формы.
Загрузите программу VB.
Введите имя формы Name – “Успеваемость” и надпись для формы Caption – “Успеваемость”.
Создайте 6 надписей, разместите их в форме в соответствии с рис. 1 и установите свойства согласно таблице 2
Создайте пять текстовых полей. Присвоить им имена (Name), похожие на соответствующие надписи. Например: txtF – физика, txtM – математика, txtInf – информатика, txtFiz – физкультура, txtSB – средний балл.
Создайте две кнопки и присвойте им имена и надписи в соответствии с табл. 2
Перейдите в окно Code. Для чего щелкните дважды мышью по полю формы или щелкните мышью по кнопке Code в окне Project.
Выбрите в левом списке объект сmdOK, а в правом списке его свойство Click. Запишите в теле этой процедуры текст программы.
Выбрите в левом списке объект сmdEnd , а в правом списке его свойство Click и запишите текст программы.
6. Сохраните программу на диске.
7. Запустите программу.
8. Проведите отладку программы:
введите в поля текста контрольные данные: 5, 4, 5,4
щелкните по кнопке ОК для получения результата;
сравните полученный результат с контрольной цифрой - 4,5.
Задание №2. Разработка простейшей формы по индивидуальному варианту, согласно прилагаемому примеру.
-
Объект
Свойство
Значение
Форма
(Form)
Name
Back Color
Caption
frmLab1
Голубой (или по выбору)
Лабораторная 1. Вычисление ...
Командная кнопка
(Command Button)
Name
Caption
cmdStart
Вычислить
Командная кнопка
(Command Button)
Name
Caption
cmdEnd
Выход из программы
Этикетка
(Label)
Name
Caption
Label1 (не изменяем)
Введите длину стороны тр-ка – A
Этикетка
(Label)
Name
Caption
Label2 (не изменяем)
Введите высоту тр-ка - H
Этикетка
(Label)
Name
Caption
Label3 (не изменяем)
Результат: площадь тр-ка =
Текстовое поле
(TextBox)
Name
Text
txtСторона
(очистить)
Текстовое поле
(TextBox)
Name
Text
txtВысота
(очистить)
Текстовое поле
(TextBox)
Name
Text
txtПлощадь
(очистить)
Должна получиться примерно такая форма:
4.Открыть окно кода программы (кнопка View Code окна просмотра)
Открыть список объектов.
Выбрать объект cmdStart, щелкнуть мышью. В полученной заготовке процедуры на писать код обработки события:
Private Sub cmdStart_Click()
a = Val(txtСторона.Text) 'Считывам значение св-ва Text в переменную
h = Val(txtВысота.Text)
s = a * h / 2 'Вычисляем значение
txtПлощадь.Text = Str(s) 'Заносим результат в св-во Text
End Sub
Выбрать объект cmdEnd, щелкнуть мышью. В полученной заготовке процедуры на писать код обработки события:
Private Sub cmdEnd_Click()
End 'оператор окончания программы
End Sub
5. Сохранить проект:
Выделить форму в окне просмотра проекта
меню Файл-Save Project as
Используя открывшееся диалоговое окно, в папке R:\VB создать новую папку Lab1, открыть ее
дать имя форме: frmLab1 (тип файла – frm)
щелкнуть по кнопке Сохранить
дать имя проекту: project_Lab1 ( тип файла – vbp)
щелкнуть по кнопке Сохранить
►
6. Запустить проект на выполнение (Меню –Run или кнопка
Ввести значения в текстовые поля – сторона и высота треугольника.
Щелкнуть по кнопке Вычислить – получаем результат.
Щелкнуть по кнопке Выход из программы – проект завершается.
Вид формы с полученным результатом:
Задание №3. Программирование vba
Создание функции пользователя в VBA с последующими выполнениями расчетов в EXCEL по индивидуальному варианту согласно прилагаемому примеру.
Методические указания к реализации заданий на алгоритмизацию и программирование.
Любая процедура в Excel может быть создана по следующей схеме:
Запустить VBA. Для этого наиболее быстро и просто нажать сочетание клавиш Alt+F11 (это же сочетание клавиш переводит нас из VBA на рабочий лист).
После запуска VBA появляется рабочее окно с меню, в котором нужно щелкнуть по команде Insert и выбрать пункт Module. В результате этих действий создается специальный объект VBA -модуль с именем Modulel {Module2, ModulеЗ, ...) и на экране появляется соответствующее окно, предназначенное для ввода и редактирования процедур.
Далее следует снова щелкнуть пункт меню Insert и выбрать уже пункт Procedure. При этом появится окошко Add Procedure (Добавить Процедуру).
В этом окне в текстовом поле Name следует ввести имя процедуры, например, m_f, а затем выбрать тип процедуры -Function или Sub и указать сферу действия - Public (Scope -сфера действия).
В результате действий, указанных в п.п. 3,4, создается пустая процедура, т.е. процедура, состоящая из заголовка и окончания (без тела). Остается внести изменения в заголовок (указать параметры процедуры) и набрать текст самой процедуры (ее тело). Например: расчет площади прямоугольника
Public Function ptr(a, h)
s = a * h / 2
ptr = s
End Function
В процессе набора VBA будет контролировать правильность ввода и сообщать об ошибках, если таковые будут возникать.
Для возврата на рабочий лист нажать сочетание клавиш Alt+F11.
Результат выполнения в ЕXCEL
Индивидуальные варианты заданий
Задание : 1.Составить программу для расчета величин по
нижеприведенным формулам
2. Получить результаты и дать их объяснение.
Оформить пояснительную записку , которая должна включать :
задание;
блок-схему алгоритма задачи;
текст программы;
результаты.
№ варианта |
З А Д А Н И Е |
Расчетная формула |
Примечание (пример) |
1 |
Определить сторону прямоугольника, если известны одна из его сторон и площадь |
a = S / b |
S = 20 ; b= 6 |
2 |
Определить радиус круга, если известна его площадь. |
R = (S/) |
S=34;=3.1415 |
3 |
Определить радиус окружности, если известна длина окружности. |
R = L / (2) |
L=80;=3.1415 |
4 |
Определить среднее геометрическое двух чисел. |
C=(a b) |
a=12; b=13 |
5 |
Определить сторону куба, если известен его объем. |
a = V^(1/3) |
V= 14 |
6 |
Определить сторону квадрата , если известна его площадь |
a = S |
S= 15 |
7 |
Определить значение электрического тока на участке цепи |
I = U / R |
U=220; R =33 |
8 |
Определить радиус шара, если известен его объем |
R=( 3V/4)^(1/3) |
V=10:=3.1415 |
9 |
Определить высоту пирамиды, если известны ее объем и площадь основания |
H = 3V / S |
V=14; S=9 |
10 |
Определить радиус основания конуса, если известны его объем и высота |
R=(3V/H) |
V=67;H=45;=3.1415 |
11 |
Определить сопротивление участка электрической цепи |
R = U / I |
U=220;I=3 |
12 |
Определить значение гипотенузы прямоугольного треугольника |
C=( a^2 +b^2) |
a=22; b=10 |
13 |
Определить площадь основания прямоугольного параллелепипеда, если известны его объем и высота |
S = V / H |
V=130;H=11 |
14 |
Определить значение высоты треугольника, если известны его площадь и основание |
h = 2S / a |
S=100;a=12 |
15 |
Определить время, если известны расстояние и скорость |
t = S / v |
S=3500;v=900 |
Справочная информация для проведения расчетов