Создание макросов

Макрос – это набор инструкций, записанных  на языке Visual Basic (VB), которые задают последовательность действий, выполняемую табличным процессором автоматически без участия пользователя. Обычно макросы создаются для автоматизации часто повторяющихся одинаковых  задач.
Макрос можно создать двумя способами - автоматически записать последовательность необходимых действий с помощью макрорекордера или вручную ввести необходимые инструкции на языке Visual Basic в специальный модуль проекта. При этом, если в первом случае пользователь, создающий макрос, может не знать языка программирования Visual Basic, то во втором знание языка программирования необходимо.
Создание макросов с помощью макрорекордера
Процесс создания макроса состоит из трех шагов:


Рис.

- чтобы начать запись макроса щелкнем на кнопке ОК диалогового окна- на экране появится панель управления с кнопкой Остановить запись (рис. ).



Рис.

3. Выполним все действия, вводя в ячейки диапазона H2:H5 формулу для решения системы линейных уравнений:
=МУМНОЖ(МОБР(A2:D5);F2:F5).
4. Щелкнем на кнопке Остановить запись панели управления.
5. Чтобы проверить работу макроса, очистим диапазон H2:H5 с имеющимся решением и запустим макрос комбинацией клавиш. Макрос выполнит записанные действия и в ячейках диапазона H2:H5 будет вычислен результат (рис.).


Рис.

Использование окна диалога Макрос
Чтобы запустить макрос необязательно знать назначенное ему сочетание клавиш. Для этой цели можно воспользоваться окном диалога Макрос (рис. ).



Рис.

Для запуска макроса с помощью окна диалога Макрос выполним действия:
- Выполним команду Сервис/ Макрос / Макросы, откроется окно диалога Макрос.
- В списке Имя макроса выберем нужный макрос и щелкнем на кнопке Выполнить.
- Используя окно диалога Макрос можно удалить созданный макрос, создать новый или изменить существующий, а также просмотреть код инструкций макроса.
- Для просмотра кода инструкций созданного нами макроса щелкнем на кнопке Войти, откроется главное окно редактора Microsoft Visual Basic в окне редактирования кода которого отобразится код инструкций макроса (рис.).



Рис.

Код инструкций созданного макроса приведен ниже:
Листинг 1.
Sub Уравн()
'
' Уравн Макрос
' Решение линейных уравнений Макрос записан 10.03.2008 (Мельников)
' Сочетание клавиш: Ctrl+U
'
Range("H2:H5").Select
Selection.FormulaArray = "=MMULT(MINVERSE(RC[-7]:R[3]C[-4]),RC[-2]:R[3]C[-2])"
End Sub
Созданный макрос не удобен с той точки зрения, что он позволяет решать только системы, состоящие из четырех уравнений, коэффициенты матриц которых записаны в ячейках заранее определенных диапазонов.
Для создания универсального с этих позиций макроса его нужно частично изменить, добавив дополнительные инструкции на языке Visual Basic.  Редактирование макроса для придания ему новых функций выполняется в окне редактирования кода редактора Microsoft Visual Basic.
В листинге 2 приведен код инструкций макроса, который является более универсальным с точки зрения отмеченных выше недостатков.
Листинг 2
Sub Уравн()
'
' Уравн Макрос
' Решение линейных уравнений Макрос записан 10.03.2008 (Мельников)
'
' Сочетание клавиш: Ctrl+U
'
Dim rez As String
Dim A As String
Dim B As String
A = InputBox("Введите адрес диапазона матрицы А")
B = InputBox("Укажите адрес диапазона вектора В")
rez = InputBox("укажите адрес диапазона для вывода результата")
Range(rez).Select
Selection.FormulaArray = "=MMULT(MINVERSE(" & A & ")," & B & ")"
End Sub
Можно заметить, что для внесения даже простых изменений в код инструкции необходимо знание языка MS Visual Basic и среды разработки.
В настоящем пособии не ставится задача подробного описания возможностей Visual Basic. Поэтому далее рассмотрим только те аспекты, которые будут необходимы для создания макросов, а также функций пользователя.

Предыдущая  Следующая   В cодержание темы

  
Hosted by uCoz