Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка_по_ИТУ.doc
Скачиваний:
20
Добавлен:
31.03.2015
Размер:
14.24 Mб
Скачать

8.7. Создание пользовательских панелей и кнопок запуска программ

Ход занятия.

Панели инструментов создаются из меню Вид/ Панели инструментов/ настройка/ Выбрать вкладку панели инструментов/ Создать. В открывшемся окне ввести название панели, сделать ее доступной для проекта документа.

Задание 1. Создайте панель инструментов VBAпрограммы. Конец задания1.

Создание проекта, модуля, процедуры, функции.

Перед созданием программ, необходимо удалить лишние модули и подпрограммы. Для этого необходимо открыть окно VBA. Перейти в окно проекта. Выделить удаляемый модуль или процедуру, вызвать контекстное меню (щелкнуть правую кнопку мыши) нажать строчку удалить модуль. На запрос о сохранении удаляемого модуля, выбрать НЕТ.

Создание модуля осуществляется из меню Вставка/ Модуль.

Задание 2. Создайте модуль с именем VBAМод1. Опишите в конспекте каким образом присваивается имя модуля. Каким образом можно изменить имя модуля.

Конец задания 2.

Средства ввода- вывода данных.

Модули содержат процедуры и функции. Создание процедуры осуществляется из меню Вставка/ процедура. В диалоговом окне задается имя процедуры, тип.

Задание 3. Используя команду Вставка / Процедура Создайте процедуру ВводВывод:

Public Sub ВводВывод()

Dim strИмя As String

strИмя = InputBox("Введите Ваше имя", "Окно ввода", "Неизвестный")

MsgBox Prompt:=strИмя & " ! У Вас получилось! "

End Sub

Функция InputBox имеет параметры:

InputBox(“сообщение пользователю”, заголовок окна, значение по умолчанию)

Сообщение в окне диалога MsgBox представляет собой строку, включающую последовательность строковых констант в кавычках соединенных знаком & c именами переменных. Например, при использовании операторов

b = 10

MsgBox(“Значение переменной b = ” & b)

будет выведено - Значение переменной b = 10.

Свяжите созданную процедуру с кнопкой на панели инструментов. Для вывода кнопки запуска программы на созданную панель необходимо в окне Настройка перейти на вкладку Команды, выбрать в поле Категории Макросы, в поле Команды выбрать кнопку соответствующую программе, захватить кнопку мышкой перетащить на панель и бросить. Используя меню Изменить выделенный объект выбрать Основной стиль для кнопки или изменить значок.

Перейдите в окно текстового документа. Запустите в работу программу. Опишите в конспекте назначение операторов программы.

Конец задания 3.

Задание 4. Создайте подпрограммы :

  1. расчета скорости по известным расстоянию и времени.

  2. расчета длины окружности и ее площади по значению радиуса.

  3. расчета объема цилиндра по известным высоте и радиуса.

Свяжите созданные процедуры с кнопками на панели инструментов.

Конец задания 4.

8.8. Решение задач при помощи стандартных средствVba

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

Таблица соответствия алгоритмических и программных структур

Таблица 1

№ п/п

Задача

Алгоритм

Программа на VBA

1

Начало процесса, заголовок.

начало;

Public Sub ImProgram()

2

Описание структуры данных.

Список переменных:

a, b, c – вещ;

d, k – цел;

mas(5, 5) – цел; mas1(5,5) – вещ;

Dim a, b, c As Single

Dim d, k As Integer

Dim mas(1 to 5, 1 to 5) As Integer

Dim mas( 5, 5) As Single

3

Ввод исходных значений.

Ввод(a, b, d, k);

a = InputBox( “Ввод a”)

b = InputBox( “Ввод b”)

d = InputBox( “Ввод d”)

k = InputBox( “Ввод k”)

4

Проверка исходных данных.

Вывод(a, b, d, k);

MsgBox “Вывод a” & a

MsgBox “Вывод b” & b

MsgBox “Вывод d” & d

MsgBox “Вывод k” & k

5

Линейные операции ( действия ).

c = 2a + √b

c := 2 * a + Sqr(b);

c = 2 * a + Sqr(b)

(см. ниже ссылку 1)

6

Выбор альтернативного пути в зависимости от значения условия.

Если с > 10 то с := с – 3*а;

иначе с := с + 2*b;

конец- если;

If c > 10 Then

с = с – 3*а

Else

с = с + 2*b

End If

7

Выбор одного из нескольких альтернативных путей.

Если performance=1 то

Bonus = salary * 0.1

Иначе Если performance=2или3 то Bonus = salary * 0.09 Иначе Если performance>=4 и performance<=6 то Bonus = salary * 0.07 Иначе Если performance>8 то Bonus = 100 Иначе Bonus = 0,

где performance – переменная выбора, Bonus, salary – переменные.

Select Case performance

Case 1

Bonus = salary * 0.1

Case 2, 3

Bonus = salary * 0.09

Case 4 To 6

Bonus = salary * 0.07

Case Is > 8

Bonus = 100

Case Else

Bonus = 0

End Select

8

Выполнение последовательности одних и тех же действий заданное количество раз.

Цикл по i = 1 до 10 шаг 2;

a := 34/b;

c := √a + 2*c;

b := b + 1;

Вывод ( с );

Конец цикла по i;

For i = 1 To 10 Step 2

a := 34/b;

c := √a + 2*c;

b := b + 1;

MsgBox “Вывод с” & с

Next i

9

Выполнение последовательности одних и тех же действий с предварительной проверкой условия окончания действий.

Последовательное приближение к результату, итерационный процесс.

Цикл – пока myNum > 10;

myNum = myNum – 1;

counter = counter + 1;

Конец цикла;

Do While myNum > 10

myNum = myNum - 1

counter = counter + 1

Loop

10

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

Последовательное приближение к результату, итерационный процесс.

ЦиклДо myNum > 10;

myNum = myNum – 1;

counter = counter + 1;

Конец цикла;

Do

myNum = myNum - 1

counter = counter + 1

Loop While myNum > 10

11

Завершение операций.

конец;

End Sub

  1. Справка по функциям и операторам VBA вызывается в окне Visual Basic по схеме: «? / Содержание и предметный указатель / содержание / Справочное руководство по Visual Basic / Функции или Обзор Visual Basic для приложений».

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