- •Содержание
- •Введение
- •1 Основные понятия языка программирования vba
- •1.1 Элементы языка
- •1.2 Константы
- •1.3 Идентификаторы
- •StrMyName, I, intNumOne, Номер, Max_Len и т.П.
- •1.4 Переменные
- •1.5 Выражения и операции
- •1.6 Массивы
- •1.7 Строки
- •2 Структура программы на vba
- •2.1 Оператор комментария
- •2.2 Оператор присваивания
- •2.3 Оператор вывода и диалоговые окна ввода/вывода информации
- •2.4 Оператор безусловного перехода
- •2.5 Оператор условного перехода
- •2.6 Оператор множественного выбора
- •2.7 Операторы цикла
- •If условие Then Exit For
- •If условие Then Exit Do
- •2.8 Обработка информационных массивов
- •2.9 Процедуры и функции
- •2.10 Обработка строковой информации
- •3 Элементы среды разработки vba
- •3.1 Панель инструментов Стандартная
- •3.2 Элементы управления
- •Лабораторная работа №1 Тема: Инструментальная среда языка программирования vba
- •1) Активизируйте редактор vba.
- •2) Ознакомьтесь с интерфейсом редактора vba.
- •3) Добавьте в окно проекта Стандартный модуль командой меню Вставка/Модуль (Insert/Module).
- •4) Добавьте Форму в окно проекта командой меню Вставка/ UserForm (Insert/ UserForm).
- •Лабораторная работа №2 Тема: Разработка программ линейной структуры в среде vba
- •1) Способ представления алгоритма в виде блок-схемы.
- •2) Линейная структура программы в vba.
- •5) Выполните ввод числовых значений:
- •6) Программа выведет на экран монитора диалоговое окно с результатом вычислений:
- •Индивидуальные задания для самостоятельной работы
- •Задание 1. По предложенной блок-схеме разработать программу. Используя функцию Round, округлить результаты вычислений.
- •Варианты задания 3
- •Лабораторная работа №3 Тема: Разработка программ разветвленной структуры в среде vba
- •1) Понятие разветвленной вычислительной структуры.
- •Индивидуальные задания для самостоятельной работы
- •Лабораторная работа № 4 Тема: Разработка программ циклической структуры в среде vba
- •1) Понятие циклического вычислительного процесса.
- •2) Реализовать данную программу в среде vba Microsoft Excel:
- •3) Внести изменения в программу Пример4 так, чтобы было возможно вычисление суммы любого количества чисел «2».
- •4) Реализовать данную программу в среде vba Microsoft Excel:
- •7) Реализовать данную программу (рис. 22) в среде vba Microsoft Excel. Выполнить вывод заголовков и результатов в окно Immediate:
- •Индивидуальные задания для самостоятельной работы
- •Лабораторная работа № 5 Тема: Разработка программ обработки информационных массивов в среде vba
- •1) Порядок обработки информационного массива.
- •4) Реализовать данную программу в среде vba Microsoft Excel:
- •Лабораторная работа №6 Тема: Разработка программ смешанной структуры в среде vba
- •2) Реализовать данную программу в среде vba Microsoft Excel:
- •Индивидуальные задания для самостоятельной работы
- •Блок-схема алгоритма:
- •Литература
- •Правила изображения блок-схем
- •Указатель
Лабораторная работа №6 Тема: Разработка программ смешанной структуры в среде vba
Цель работы:
Научиться составлять алгоритмы смешанной структуры в виде блок-схемы.
Получить навыки составления программ смешанной структуры.
Получение дальнейших навыков по отладке и тестированию программ.
Ход работы:
1) Понятие смешанного вычислительного процесса. К смешанным вычислительным процессам может быть отнесен, например, разветвляющийся вычислительный процесс, в одной или нескольких ветвях которого имеют место циклы.
Более того, выбор ветви вычислений может определяться критерием, который сам не определен, а требует предварительного расчета.
Пример 8. Вычислить:
, где T = c - d
Решение: В задаче реализуется разветвляющийся вычислительный процесс, в одной ветви которого имеет место цикл, при этом критерий выбора ветви t сам требует предварительного расчета по формуле
t = c - d.
При решении задачи следует иметь в виду, что в зависимости от параметров c и d, а, следовательно, критерия t может иметь место два случая.
Первый случай, когда c < d или c=d и, следовательно, t<0 или t=0. При этом реализуется линейный вычислительный процесс Х=А*В.
Второй случай, когда t>0 при этом реализуется циклический процесс накопления суммы X массива чисел Y.
Б лок-схема алгоритма такого вычислительного процесса представлена на рис. 24.
Рис. 24 Блок-схема алгоритма Пример 8
2) Реализовать данную программу в среде vba Microsoft Excel:
Sub Пример8( )
Dim Y( ) As Single
Dim C, D, T, A, B, X As Single
Dim n, i As Integer
C = InputBox("Введите переменную C")
D = InputBox("Введите переменную D")
T = C - D
If T > 0 Then
X = 0
n = InputBox("Введите количество элементов массива Y")
ReDim Y(n) As Single
For i = 1 To n
Y(i) = InputBox("Введите" & i & "элемент массива")
Debug.Print "Y("; i; ")", Y(i)
X = X + Y(i)
Next i
Else
A = InputBox("Введите переменную A")
B = InputBox("Введите переменную B")
Debug.Print "A= "; A, "B= "; B
X = A * B
End If
Debug.Print "X= "; X
End Sub
Выполним задачу вначале для первого случая, когда t<0 и реализуется левая ветвь, т.е. линейный вычислительный процесс:
1. Запустить программу на счёт.
2. В диалоговое окно с подсказкой:
«Введите переменную C»
ввести с клавиатуры число 2.
3. В диалоговое окно с подсказкой:
«Введите переменную D»
ввести с клавиатуры число 3.
4. В диалоговое окно с подсказкой:
«Введите переменную A»
ввести любое число, например, 20.
5. В диалоговое окно с подсказкой:
«Введите переменную B»
ввести любое число, например, 30.
Результаты работы программы будут выведены в окно Immediate:
Рис. 25 Результаты работы программы Пример 8 при T<=0
Выполним задачу для второго случая, когда t>0 и реализуется правая ветвь, т.е. циклический процесс:
1. Снова запустить программу на счёт.
2. В диалоговое окно с подсказкой:
«Введите переменную C»
ввести с клавиатуры число 3.
3. В диалоговое окно с подсказкой:
«Введите переменную D»
ввести с клавиатуры число 2.
4. В диалоговое окно с подсказкой:
«Введите количество элементов массива Y»
ввести любое число, например, 5.
5. В диалоговое окно с подсказкой:
«Введите 1 элемент массива»
набрать любое число, например, 1.
6. На последующие запросы элементов, а их будет еще четыре, ввести любые числа, например, как указано на рис. 26.
После ввода последнего числа результаты работы программы будут выведены в окно Immediate:
Рис. 26 Результаты работы программы Пример 8 при T>0