Глава 6. Организация циклических программ в vba
Для решения поставленной задачи удобно использовать оператор выбора Select Case. Синтаксис оператора Select Case:
Select Case селектор
Case 1-й установленный диапазон значений селектора : оператор 1
Case 2-й установленный диапазон значений селектора : оператор 2
-----------------------------------------------
Case n- й установленный диапазон значений селектора : оператор n
Case Else: оператор n+1
End Select
Селектор – переменная, значение которой до входа в оператор Select Case должно быть известно. Если это значение совпадает с 1-м установленным заранее диапазоном значений, то выполняется оператор 1 и управление передается на End Select. Если значение не совпадает, происходит сравнение со вторым диапазоном и т.д.
Способы задания установленного значения селектора: Перечнем значений через запятую (например: Case 2,5,8 ...) Диапазоном значений ( Case 2 to 10) Ключевым словом Is, справа от которого записывается оператор отношения, например, Case is < 2.
Запишем процедуру отклика командной кнопки CommandButton1 для решения данной задачи:
Private Sub CommandButton1_Click()
Dim x, y As Single 'Объявление типов переменных Х и Y
x = Val(InputBox(" Введите значение х ")) ' Ввод текущего значения Х
Select Case x ' Начало оператора Select Case
Case 1,3,5,6: y=sin(x)
Case 8 to 10 : y=Tan(x)
Case 15 to 20: y=Log(x)
Case is >30: y=x^2.5
Case Else: y=0 ' В остальных случаях
End Select ' Конец оператора Select
MsgBox “y=” & y
End Sub
Пример 5.4. По вводимым буквам русского алфавита А, Б, Д вывести слова Одесса, Николаев, Херсон. Сделать контроль ввода.
Private Sub CommandButton2_Click()
Dim x, y As String 'Объявление типов переменных Х и Y
x = InputBox(" Введите заданный символ") 'Ввод текущей буквы
Select Case x ' Начало оператора Select Case
Case “А“: y = " Одесса "
Case “Б“ : y = " Николаев "
Case “Д“: y = " Херсон "
Case Else: MsgBox " Ошибочный ввод" ' Проверка ввода
End Select ' Конец оператора Select
MsgBox y
End Sub
- Одесская национальная академия пищевых технологий
- Программа дисциплины
- Глава 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. Обозначения блоков в схемах алгоритмов
- Литература
- Содержание