- •Н. Н. Пустовалова, т. В. Кишкурно
- •Информатика и компьютерная графика
- •Учебно-методическое пособие для студентов-заочников
- •Химико-технологических специальностей
- •Введение
- •1 Ознакомление со средой windows
- •1.1 Работа с мышкой и окнами
- •1.2 Создание, открытие и сохранение файлов
- •1.3 Операции копирования, перемещения, вставки
- •1.4 Поиск файла
- •1.5 Программы группы «Стандартные»
- •1.6 Содержание заданий
- •2 Текстовый редактор word
- •2.1 Ввод, редактирование и форматирование текста
- •2.2 Таблицы в текстовых документах
- •2.3 Работа с рисунками. Художественное оформление текстов
- •2.4 Математические формулы
- •2.5 Оформление текста
- •2. 6 Нумерация страниц, стили, оглавление
- •2. 7 Параметры страниц и печать
- •2.8 Содержание заданий
- •1.3. Текст программы
- •1.4. Вычисление суммы
- •Заключение
- •Оглавление
- •3 Приложение microsoft excel
- •3.1 Ввод и редактирование данных
- •3.2 Форматирование таблицы
- •3.3 Вычисления в Excel
- •3.4 Создание диаграмм. Вставка объектов и печать
- •3.5 Содержание заданий
- •Зарплата работников за январь
- •4 Использование vba в среде excel. Линейные программы.
- •4.1 Элементы управления
- •4.2 Среда редактора Visual Basic for Application
- •4.3 Основные конструкции vba
- •4.4 Линейные программы
- •4.5 Содержание заданий
- •5 Циклы в инженерных расчетах
- •5.1 Циклы For ... Next
- •5.2 Циклы Do...Loop
- •5.3 Содержание заданий
- •6 Программы с разветвлением. Условные операторы
- •6.1 Строчный и блочный условные операторы
- •6.2 Разветвляющиеся программы со сложными условиями
- •6.3 Содержание заданий
- •7 Вычисление сумм, произведений, экстремумов
- •7.1 Примеры вычисления сумм и произведений
- •7.2 Одномерные массивы. Вычисление экстремумов
- •7.3 Содержание заданий
- •8 Формы пользователя
- •8.1 Свойства и методы элементов управления. Списки
- •8.2 Пример работы с формой пользователя
- •8.3 Содержание заданий
- •9 Приложение mathcad
- •9.1 Ввод информации
- •9.2 Графики
- •9.3 Содержание заданий
- •10 Вычисление интегралов, решение уравнений и систем уравнений
- •10.1 Приближенное вычисление интегралов
- •10.2 Решение уравнений
- •2. Содержание задания
- •10.3 Решение систем линейных уравнений
- •10.4 Содержание заданий
- •11 Компьютерная графика
- •11.1 Виды графических изображений
- •10.2 Инструменты в графическом редакторе Adobe Photoshop
- •10.3 Слои и выделение графических изображений
- •10.4 Обработка изображений, ввод текста
- •10.5 Корректировка и использование фильтров
- •10.6 Примеры использования фильтров
- •10.7 Содержание заданий
- •12 Задания для контрольной работы
- •Задание № 1. Составление программ линейной структуры на языке vba
- •Задание № 2. Программирование алгоритмов циклической и разветвляющей структуры
- •Задание № 3. Вычисление сумм, произведений, нахождение минимумов и максимумов
- •Задание № 4. Вычисление интегралов и решение уравнений
- •Литература
- •Содержание
- •Информатика и компьютерная графика
- •220006. Минск, Свердлова. 13а.
- •220006. Минск, Свердлова. 13а.
4.4 Линейные программы
В линейных программах выполняются расчеты по формулам и другие действия, не требующие разветвления процессов и их повторов.
Пример. Пусть требуется для x=1,5 a=3,75 m=0.510-4 вычислить значения переменных w и z по формулам:
Оформим Лист2 согласно образцу на рис 4.3:
Рис. 4.3 − Образец оформления линейной программы на листе Excel
Для кнопки «Вычислить» напишем следующую процедуру:
Private Sub CommandButton1_Click()
Dim x As Single, a As Single, m As Single, w As Single, z As Single
x = Worksheets("Лист2").Range("c17")
a = Worksheets("Лист2").Range("c18")
m = Worksheets("Лист2").Range("c19")
w = 0.5 * Sqr(x * a * Abs(1 - m * m))
z = Cos(Log(Abs(w)) / (2 + w))
Worksheets("Лист2").Range("g25") = w
Worksheets("Лист2").Range("h25") = z
End Sub
Здесь ввод исходных данных и вывод результата организован из ячеек рабочего листа и в ячейки рабочего листа.
Если использовать относительные ссылки, то эта же процедура может выглядеть следующим образом:
Private Sub CommandButton1_Click()
Dim x As Single, a As Single, m As Single, w As Single, z As Single
x = Worksheets("Лист1").Cells(17, 3)
a = Worksheets("Лист1").Cells(18, 3)
m = Worksheets("Лист1").Cells(19, 3)
w = exp(x) * a * (1 - m ^ 2)
z = Sin(w / (2 + w))
Worksheets("Лист1").Cells(24, 7) = w
Worksheets("Лист1").Cells(24, 8) = z
End Sub
Можно организовать ввод данных с клавиатуры, а вывод результатов – в окно сообщений. Тогда процедура примет такой вид:
Private Sub CommandButton2_Click()
Dim x As Single, a As Single
Dim m As Single, w As Single
Dim z As Single
x = Val(InputBox(“Введите x “))
a = Val(InputBox(“Введите a”))
m= Val(InputBox(“Введите m”))
w = 0.5*Sqr(x*a*abs(1 - m * m))
z = cos(log(w)/( 2 + w))
MsgBox (“w=” & w )
MsgBox (“z=” & z )
End Sub
Для проверки результатов введем в ячейку G24 формулу:
=0,5*КОРЕНЬ((C17*C18)*ABS(1-C19*C19))
А в ячейку H24:
=COS(LN(ABS(G24))/(2+G24))
Для очистки ячеек рабочего листа можно использовать метод Clear для объектов Cells() и Range().
Т.о. программный код кнопки «Очистить» будет выглядеть следующим образом:
Private Sub CommandButton4_Click()
Worksheets("Лист2").Range("g25").Clear
Worksheets("Лист2").Range("h25").Clear
End Sub
Если необходимо очистить диапазон ячеек, либо все ячейки рабочего листа, то нужно записать:
Private Sub CommandButton4_Click()
Worksheets("Лист1").Range("d8:d12").Clear ‘очистка диапазона ячеек
Worksheets("Лист2").Сells.Clear ‘очистка всех ячеек
End Sub
Свойства ячеек также можно менять программно, например, если нужно вывести значения на рабочем листе «Лист1», используя размер 14 и шрифт Times New Roman, то надо записать в процедуре перед выводом данных:
Worksheets("Лист1").Range("a2").Font.Name = "Times New Roman"
Worksheets("Лист1").Range("a2").Font.Size = 14
Отладка программы. Если при вводе оператора была допущена синтаксическая ошибка, то редактор VBA помечает строку красным цветом. При возникновении ошибки во время запуска программы (например, деление на 0) происходит прерывание выполнения программы и вывод сообщения о типе ошибки. При этом в окне сообщения можно выбрать режим остановки программы End или перехода в окно отладки программы Debug. Строка с ошибкой или процедура, где возникла ошибка, будет помечена желтым цветом.
Для исправления ошибки нужно прервать программу, нажав кнопку Reset на панели инструментов редактораVBA, исправить ее и запустить программу заново. Или исправить ошибку, затем продолжить выполнение программы, нажав кнопку Continue (Run).