- •Одесская национальная академия пищевых технологий
- •Программа дисциплины
- •Глава 1. Алгоритмизация вычислительных процессов Этапы решения инженерных задач на пк
- •1.1. Алгоритм и его свойства
- •Типы алгоритмических структур
- •1.2. Линейные и разветвляющиеся алгоритмы
- •1.3. Простые циклические алгоритмы
- •1.4. Циклические алгоритмы обработки массивов
- •Двумерные массивы
- •А) ввод по строкам в) ввод по столбцам
- •Глава 2. Система программирования Visual Basic for Applications (vba)
- •2.1. Основные положения
- •2.2. Некоторые определения
- •Стандартный модуль (Module)
- •2.3. Запуск и элементы окна редактора vba
- •Глава 3. Пример создания проекта в vba и типы данных
- •3.1. Порядок действий на пк при создании проекта
- •3.2. Элементы языка vba
- •Данные в vba
- •3.3. Описание переменных
- •Глава 4. Выражения в vba и ввод – вывод данных
- •4.1. Выражения в vba
- •4.2. Операторы присваивания и способы ввода данных Оператор присваивания
- •Способы ввода данных
- •Для ввода
- •4.3. Способы вывода данных
- •Глава 5. Организация разветвляющихся программ
- •5.1. Операторы управления goto, if
- •Условный оператор управления if
- •5.3. Оператор выбора Select Case
- •Глава 6. Организация циклических программ в vba
- •6.1. Простые циклические программы с оператором if
- •6.2. Оператор цикла For ... Next
- •6.3. Операторы циклов типа Do (выполнить)
- •Использование операторов Do While и Do Until для организация цикла с защитой входа
- •Использование операторов Do While и Do Until для организация цикла с свободным входом в цикл (с послеусловием) Организация цикла с проверкой условия в конце цикла
- •Глава 7. Массивы данных в vbа
- •7.2. Примеры обработки одномерных массивов
- •Сортировка числовых одномерных массивов
- •Алгоритм сортировки одномерного массива по возрастанию
- •7.3. Двумерный массив
- •Программа
- •Глава 8. Пользовательские процедуры типа Sub и Function в vba
- •8.1. Подпрограммы
- •Вызов подпрограммы процедуры Sub
- •2 Способ.
- •8.3. Подпрограмма - процедура Function
- •Вызов подпрограммы - процедуры Function
- •Глава 9. Решение оптимизационных задач
- •9.1. Обработка электронных таблиц в среде vba
- •9.2. Применение процедуры Поиск решения для решения линейных оптимизационных задач
- •9. 3. Подготовка эт
- •Линейные, разветвляющиеся и циклические алгоритмы
- •Оформление протокола лабораторной работы
- •Контрольные вопросы
- •Алгоритмы обработки одномерных и двумерных массивов
- •Оформление протокола лабораторной работы
- •Задание №1. Создать простейший проект ″Приветствие″ в vba:
- •1. Разработка интерфейса пользователя.
- •Оформление протокола лабораторной работы
- •Контрольные вопросы
- •Линейные программы в vba
- •Пример составления программы для нулевого варианта задания
- •Private Sub CommandButton1_Click() ′ Заголовок процедуры отклика
- •Разработка проектов в vba по разветвляющимся программам
- •Оформление протокола лабораторной работы
- •Контрольные вопросы
- •Циклические программы в vba
- •End Sub ‘ Конец процедуры отклика
- •End Sub ‘ Конец процедуры отклика
- •Оформление протокола лабораторной работы
- •Контрольные вопросы
- •Обработка одномерных массивов в vbа
- •Порядок выполнения задания №1.
- •Пример выполнения лабораторной работы
- •3. Интерфейс на рис. Л7.1. Вывод результата решения по условию нулевого варианта не в окно TextBox1, а в окно отладки Immediate Window.
- •4. Процедура отклика кнопки 1:
- •Результат решения в окне отладки Immediate Window (рис. Л7.3).
- •Оформление протокола лабораторной работы
- •Контрольные вопросы
- •Дайте определение одномерного массива.
- •Обработка двумерных массивов в vbа
- •Порядок выполнения задания №1.
- •Пример выполнения лабораторной работы
- •Оформление протокола лабораторной работы
- •Программная единица
- •Оформление протокола лабораторной работы
- •Контрольные вопросы
- •Обработка эт в среде vbа
- •Оформление протокола лабораторной работы
- •Приложение 1. Обозначения блоков в схемах алгоритмов
- •Литература
- •Содержание
(Public
- глобальная область действия переменной
)Стандартный модуль (Module)
Программа Процедура
(Dim- локальная область) ------------------------------------------- Процедура
(Dim-локальная область)
Форма
Рис. 2.2. Структура проекта в VBА
2.3. Запуск и элементы окна редактора vba
В главном окне Excel выполнить команды: Сервис, Макрос, Редактор Visual Basic. После этого на экран выводится окно редактора VBА (рис. 2.3).
Стандартные элементы окна редактора VBA:
Строка заголовка окна - в ней записано имя открытого проекта (Project1);
Строка меню - содержит основные команды системы VBА:
File (Файл), Edit (Правка) , View ( Вид) , Insert ( Вставка), Format (Формат) , Debug (Отладка) , Run ( Пуск), Tools ( Инструменты), Window (Окно ) ;
Приведем подменю основных команд File (Файл), View ( Вид), Insert (Вставка):
Подменю файл – содержит основные команды сохранения проекта (Save) и выхода из VBA в Excel (Close).
Подменю команды View (Вид) – используется для открытия следующих основных окон: Code (открыть окно кода), Object (открыть окно формы), Immediate Window (открыть окно отладки), Project Explorer (открыть Обозреватель проекта ) , Properties Window (открыть окно свойств), ToolBox ( вывести панель элементов управления при открытой форме), Toolbars (вывести панель инструментов VBA).
Подменю команды Insert (Вставка) – UserForms (вставка формы), Module (вставка стандартного модуля).
Подменю команды Run - Run Sub/UserForm (команда запуска проекта при выведенной активной форме командами View, Object или при выведенном окне кода - команды View, Code ).
Панель инструментов окна VBA - содержит кнопки для выполнения команд (дублируют команды главного меню).
Специальные окна
Окно Project Explorer (Обозреватель проекта ) - открывается командой View (Вид), и показывает связь между файлами проекта. Обозреватель проекта имеет возможность открыть окно редактора кода и окно формы.
Окно свойств объектов (Properties) - в окне можно менять свойства активного объекта на форме и самой формы (открывается командами View, Properties Window ) .
Панель элементов управления (ToolBox ) – для вывода на форму кнопок и других объектов при создании интерфейса (открывается вместе с формой командой Insert , UserForms) .
Окно редактора кода (Code) – открывается при открытой форме командами View, Code и служит для записи и редактирования программы.
Выход из VBA в Excel – команды File (Файл), Close (закрыть).
Глава 3. Пример создания проекта в vba и типы данных
Во второй главе мы рассмотрели основные положения проекта для определения минимальной поверхности консервной банки заданного объема V (см. выше рис. 2.1).
3.1. Порядок действий на пк при создании проекта
Загрузить Excel. Запустить VBA командами Сервис, Макрос, Редактор Visual Basic. Открывается окно редактора VBA, в котором нужно вывести окно обозревателя проекта командами View, Project Explorer .
Вывести окно свойств объектов командами View, Properties Window.
Создать окно формы командами Insert, UserForm. Появляется окно формы совместно с панелью элементов управления (ToolBox). В обозревателе видна созданная форма, размеры которой устанавливаем с помощью мыши и маркеров формы.
Записать в таблицу 3.1. сведения об объектах формы с их свойствами.
Таблица 3.1 – таблица свойств объектов формы
Объекты |
Свойство |
Значение |
Примечание |
Label1 |
Caption |
Ввод V |
Надпись |
Label2 |
Caption |
Вывод R |
Надпись |
Label3 |
Caption |
Вывод h |
Надпись |
Label4 |
Caption |
Вывод S |
Надпись |
TextBox1 |
Text |
|
Для ввода V |
TextBox2 |
Text |
|
Для вывода R |
TextBox3 |
Text |
|
Для вывода h |
TextBox4 |
Text |
|
Для вывода S |
CommandButton1 |
Caption |
Запуск |
Запуск программы |
CommandButton2 |
Caption |
Выход |
Закрытие проекта |
Создать интерфейс на форме. Используя панель элементов, поместим на форму перечисленные объекты с помощью мышки, аналогично созданию автофигур в текстовом редакторе (рис. 3.1).
Рис. 3.1 Расположенные объекты на форме
Активизируя на форме отдельно каждый объект, устанавливаем его свойство с помощью окна свойств (Properties рис. 3.2). Таким образом, интерфейс создан (рис. 3.3).
Рис. 3.3. Интерфейс проекта (с готовыми результатами работы).
Запись программы в окне Кода
Подробности составления программы будут известны позже по мере изложения материала по VBA. Отметим, что запуск программы будет происходить от щелчка кнопки Запуск. Поэтому дважды щелкнем по этой кнопке на форме. В результате выводится окно кода с двумя строками процедуры отклика, между которыми установлен курсор для набора программы (рис. 3.4). Между этими строками располагаем программу вычисления:
Dim V, r, h, s As Single ‘ Описание переменных
V = Val(TextBox1.Text) ‘ Присвоение V численного значения
r = (V / (2 * 3.14)) ^ (1 / 3) ‘ Вычисление r
h = V / (3.14 * r ^ 2) ‘ Вычисление h
s = 2 * 3.14 * r ^ 2 + 2 * 3.14 * r * h ‘ Вычисление S
TextBox2 = Format(r, "##0.###" & " м.") ‘ Вывод r в окно TextBox2
TextBox3 = Format(h, "##0.###" & " м.") ‘ Вывод h в окно TextBox3
TextBox4 = Format(s, "##0.###" & " м.куб") ‘ Вывод S в окно TextBox4
Сохранение нового проекта в рабочей книге
Выполнить команды File, Save. В открывшемся окне указать путь к папке, ввести имя файла книги (например, Лаб. 1) и щелкнуть кнопку сохранить. Если проект был записан раньше , то после его редакции просто выполнить команду Save.
З
Рис.
3.4. Окно кода
Активизировать форму запускаемого проекта (или вывести окно кода).
Выполнить команды Run, а затем Run Sub/UserForm .
Выполняется компиляция проекта и его выполнение. При этом выводится работающая форма, в которой нужно с клавиатуры ввести значение объема и щелкнуть на форме кнопку Запуск. Произойдет выполнение программы с выводом результатов решения (см. рис. 3.3).
Закрыть проект, щелкнув кнопку Закрыть на форме.
Выход из режима VBA в Excel
Выполнить команды File (Файл), Close (закрыть).