Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LR1_Lineyniy_algoritm.doc
Скачиваний:
4
Добавлен:
01.03.2025
Размер:
941.57 Кб
Скачать

Пример таблицы соответствия

Имя математической переменной

Идентификатор в программе

f

f

b

a

11.2. Создание программы

Составление программы, по своей сути, представляет собой отображение алгоритма средствами программирования VBA, с использованием операторов и функций. Как правило, каждая программа реализует следующие задачи: ввод данных, обработка данных (вычисление результата) и вывод результирующих данных. Рассмотрим подробнее ввод и вывод данных.

11.2.1. Диалоговые функции ввода\вывода информации

MsgBox() – функция VBA, выводящая на экран диалоговое окно с сообщением.

Форма записи:

MsgBox(prompt,[ buttons], [ title], [ helpfile, context]), где

prompt (сообщение) – строковое выражение (максимум 1024 символа), отображаемое в диалоговом окне, в качестве сообщения;

buttons (кнопки) – числовое выражение, представляющее сумму значений, которые указывают число и тип отображаемых кнопок, тип используемого значка, основную кнопку. Значение по умолчанию равно 0;

title(заголовок) – строковое выражение, отображаемое в строке заголовка диалогового окна;

helpfile, context – файл «помощи», контекст. Используются совместно.

Используя данную функцию можно не только выводить произвольные сообщения, в ходе выполнения процедуры, но и выводить определенные данные (значения переменных).

Пример использования:

1. Вывод произвольных сообщений:

  • Строка в процедуре – MsgBox(“Процесс завершен”) выведет на экран диалоговое окно, приведенное на рис. 2а;

  • Строка в процедуре – MsgBox("Процесс завершен", , "Окно подсказки") выведет на экран диалоговое окно, представленное на рис. 2б.

2. Вывод значения переменных.

Очень часто функция MsgBox() используется при отладке процедур в редакторе VBA. Вставив оператор с этой функцией в любое место процедуры, можно приостановить вычисление и отобразить на экране в диалоговом режиме любой интересующий вас результат. Так при выполнении фрагмента процедуры:

.

.

Z = A + B

MsgBox " Значение Z= " & Z

.

.

.

End Sub

на строке, где встречается функция MsgBoх(), произойдет приостановка выполнения процедуры и на экране можно наблюдать окно вывода MsgBox, представленное на рис. 2в. Для продолжения выполнения процедуры необходимо щелкнуть мышкой по кнопке «ОК» или нажать клавишу «Enter», или закрыть окно традиционными методами (кнопка закрытия окна или «Alt+F4» ). При этом исчезает окно и выполняется оператор в следующей строке.

a)

б)

в)

Рис. 2. Диалоговое окно вывода

InputBox – функция VBA, выводящая на экран диалоговое окно, содержащее сообщение (подсказку) и поле для ввода информации. Возвращает значение типа String, содержащее текст, введенный в поле.

Форма записи:

InputBox(prompt,[title],[default], [xpos],[ypos],[helpfile, context]), где:

prompt (сообщение) – строковое выражение (максимум 1024 символа), отображаемое в диалоговом окне, в качестве подсказки;

title(заголовок) – строковое выражение, отображаемое в строке заголовка диалогового окна;

default (значение по умолчанию) – строковое выражение, отображаемое в поле ввода.

xpos – числовое значение, соответствует позиции окна по оси X.

ypos – числовое значение, соответствует позиции окна по оси Y.

helpfile, context – файл «помощи», контекст. Используются совместно.

Как видно из рис. 3, эта функция отображает окно с полем текста, куда пользователь может внести некоторую информацию. Например, если необходимо ввести рассмотренное выше значение А, которое по условию задачи равно 150, следует применить оператор: A=Val(InputBox("Введите A", "Пример")). Функция VAL() позволяет преобразовать строковый тип вводимых данных в числовой тип переменной А.

Рис. 3. Диалоговое окно ввода

Необходимо также отметить следующие особенности использования функций ввода\вывода:

  • Параметры, взятые в квадратные скобки, не являются обязательными.

  • Описанные функции, используемые с двумя или большим количеством аргументов, можно использовать только в выражении, при этом наличие запятых, соответствующих не используемым аргументам, является обязательным.

11.2.2. Использование объекта Range

Многие действия, выполняемые программами VBA, относятся к определенной части рабочего листа. Для этого необходимо идентифицировать требуемые фрагменты, как отдельную ячейку, так и группу ячеек. Для выполнения этих задач в VBA предусмотрен объект RANGE. Под объектом понимают данные и код, который манипулирует этими данными, объединенные в одну структуру.

Объект RANGE предназначен для создания ссылки на группу ячеек рабочего листа. Это может быть одна ячейка, строка, столбец, группа смежных и несмежных ячеек.

Для работы с данным объектом можно использовать различные свойства, однако в рамках данной лабораторной работы будет изучено свойство Value. Свойство Value необходимо для возврата или задания значения указанной ячейки (диапазона ячеек), иными словами пользуясь данным свойством можно в ячейку передать значение переменной и наоборот.

Форма записи:

  • Range(“адрес_ячейки”).Value=имя_переменной. При этом значение переменной «имя_переменной» передается в ячейку с адресом «адрес_ячейки».

  • Range(“адрес_диапазона”).Value=имя_переменной. При этом значение переменной «имя_переменной» передается во все ячейки диапазона с адресом «адрес_диапазона». При этом, диапазон смежных (рядом стоящих) ячеек указывается через двоеточие (например, A1:D4), а диапазон не смежных – списком, через запятую (например, A1,H12,Z43).

Статья I.имя_переменной=Range(“адрес_ячейки”).Value. При этом значение ячейки с адресом «адрес_ячейки» присваивается переменной «имя_переменной».

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]