Практическая работа №10. Элементы программирования в Excel на языке Visual Basic
Цель работы: Освоение работы с макросами и знакомство с элементами языка Visual Basic, освоение простейших приемов программирования на языке Excel Visual Basic, отработка различных способов ввода данных и вывода результатов.
Краткая теория
Решение любой задачи подразделяется на три этапа: ввод данных, обработка данных и вывод результатов.
Для ввода данных в программе используется оператор
присваивания. Синтаксис оператора присваивания имеет следующий вид:
[LET] имя переменной = выражение
В программе, написанной на языке Excel Visual Basic ввод данных можно осуществить тремя способами:
Ввод данных непосредственно в программе.
В этом случае в качестве выражения, стоящего в правой части оператора присваивания, используется число (или текст, если данные текстовые).
• Ввод данных в диалоге (с клавиатуры).
В этом случае в качестве выражения, стоящего в правой части оператора присваивания, используется функция InputВох (приглашение [,заголовок][,по умолчанию][,х позиция] [,у позиция] [,файл справки]). Эта функция имеет один обязательный аргумент – приглашение – это строковое выражение, отображаемое как сообщение в диалоговом окне функции. Аргумент заголовок используется для задания текста, отображаемого в строке заголовка диалогового окна функции InputBox. В окне функции имеется поле ввода, в которое пользователь должен ввести значение. Возвращает функция строковое значение, содержащее текст, введенный в поле ввода. Таким образом, переменной, имя которой указано в левой части оператора присваивания, будет присвоено значение, введенное пользователем в поле ввода окна функции InputBox. Для преобразования введенного в поле ввода диалога строкового выражения в формат вещественного числа используется функция Val(строковое выражение).
Ввод данных из ячеек таблицы.
В этом случае в качестве выражения, стоящего в правой части оператора присваивания, используется объект WorkSheets(«имя листа»). Range(«адрес ячейки»).Value . Таким образом, переменной, имя которой указано в левой части оператора присваивания, будет присвоено значение ячейки, адрес которой указан в правой части оператора.
Вывод результатов можно осуществить следующим образом:
Вывод в окне сообщения.
В этом случае используется функция:
MsgBox(приглашение[,кнопки] [,заголовок] [,файл справки])
Вывод в ячейки таблицы.
В этом случае используется следующая конструкция:
WorkSheets(«имя листа»).Range(«адрес ячейки»).Value = выражение
Таким образом, значение выражения, стоящего в правой части конструкции, записывается в ячейку таблицы, имя которой указано в левой части.
Использование макросов для автоматизации наиболее часто
Выполняемых задач
Макрос – это записанная последовательность команд и действий пользователя, сохраненная под уникальным именем, которую может выполнить Excel. Макрос можно создать двумя способами:
1)записать программу, составленную на языке Visual Basic, традиционным образом, т.е. ввести текст программы с клавиатуры;
2)записать с помощью макрорекордера. Excelимеет встроенное средство для записи макросов - макрорекордер. Он записывает все выполняемые пользователем действия в виде операторов языка Visual Basic.В дальнейшем макрос можно редактировать, как обычный текстовый файл.
Тексты макросов хранятся в специальных листах рабочей книги (лист Модуля).
Макрос можно выполнять каждый раз, когда необходимо выполнить данную задачу.
Перед тем как записать, или написать макрос, необходимо спланировать шаги и команды, которые он будет выполнять.
Ход работы.
1.Создать с помощью макрорекордера макрос с именем Пример 1,который позволяет выполнить следующую последовательность действий: представить окно рабочей книги в нормальном режиме, скрыть сетку, изменить вид шрифта для ячеек и присвоить ячейкам денежный стиль, ввести в ячейку число. Для начала записи макроса в меню Сервис, Макроснужно выбрать Начать запись.В диалоговом окне Запись макросанеобходимо ввести имя для макроса в соответствующее поле, а в поле Сохранить в книгеуказать Эта книга.(Если требуется, чтобы макрос был доступен независимо от того, используется ли в данный момент программой Excel,его следует сохранить в личной книге макросов.)
2.После выхода из диалога Запись макросаначинается запись (в строке состояния отображается: Запись). Теперь необходимо выполнить действия, которые должен записать макрорекордер:
· установить нормальное (занимающее часть экрана) представление окна рабочей книги;
· скрыть сетку путем выключения соответствующей опции в закладке Виддиалогового окна Параметры,которое открывается с помощью меню Сервис;
· выделить весь рабочий лист (щелчком по месту пересечения номеров столбцов и номеров строк) и присвоить всем ячейкам денежный стиль;
· задать для всех ячеек шрифт Times New Roman,16 пунктов;
· снять выделение листа.
· в ячейку С6 занести число 12.