Запись макроса, запускаемого из меню Сервис:
1 В меню Сервис выберите подменю Макрос и выберите команду Начать запись.
2 Введите имя для макроса в соответствующее поле.
Первым символом имени макроса должна быть буква. Остальные символы могут быть буквами, цифрами или знаками подчеркивания. В имени макроса не допускаются пробелы; в качестве разделителей слов следует использовать знаки подчеркивания.
3 Чтобы выполнить макрос с клавиатуры с помощью сочетания
клавиш, введите соответствующую букву в поле Сочетание клавиш. Для строчных букв используется сочетание CTRL+ буква, а для заглавных - CTRL+ SHIFT+ буква, где буква — любая буквенная клавиша на клавиа-
туре. Она не может быть цифрой или специальным символом. Заданное сочетание клавиш будет заменять любое установленное по умолчанию в Microsoft Excel, пока книга, содержащая данный макрос, открыта.
4 В поле Сохранить в книге выберите книгу, в которой должен быть сохранен макрос. Чтобы макрос был доступен независимо от того, используется ли в данный момент Microsoft Excel, его следует сохранить в личной книге в папке XLStart. Чтобы создать краткое описание макроса, введите необходимый текст в поле Описание.
5 Нажмите кнопку OK.
По умолчанию, при записи макроса используются абсолютные ссылки. Макрос, записанный с абсолютными ссылками, при выполнении всегда обрабатывает те же ячейки, которые обрабатывались при его записи. Для того, чтобы с помощью макроса обрабатывать произвольные ячейки, следует записать его с относительными ссылками. Для этого нажмите кнопку Относительная ссылка на панели инструментов Остановка записи. Относительные ссылки будут использоваться до конца текущего сеанса работы в Micro-soft Excel или до повторного нажатия кнопки Относительная ссылка.
6 Выполните макрокоманды, которые нужно записать в макрос.
7 Нажмите кнопку Остановить запись на соответствующей панели инструментов.
Примечание. Чтобы макрос сначала выбирал определенную ячейку, выполнял макрокоманду, а затем выбирал другую ячейку, связанную с активной, нужно использовать и абсолютную, и относительную ссылки при записи макроса. При записи относительных ссылок кнопка Относительная ссылка должна быть нажата. При записи абсолютных ссылок кнопка Относительная ссылка не должна быть нажата.
Абсолютная адресация
Пример 1 Разработать макрос для расчета прогнозируемых значений с помощью функции ТЕНДЕНЦИЯ. Зависимость y = f(x) задана таблицей:
A | B | C | D | E | F | G | H | |
X | ||||||||
Y |
1 Введём заданную функция в ячейки рабочего листа Excel.
2 Выполним команды Сервис\Макрос\Начать запись.
3 В появившемся окне Запись макроса введём в поле Имя макроса
слово «Тенденция» (старое имя нужно удалить), в поле Сочетание клавиш Ctrl+ введём букву, например «т», в поле Сохранить в: выберем строку «Эта книга», в поле Описание введем текст «Прогноз функцией тенденция», нажмём ОК,появится панель Останов с кнопками Остановить за-
пись и Относительная ссылка.
4 С этого момента начинается запись операций макроса «Тенденция»:
· выделим мышью ячейки F2...H2 для вывода результатов прогноза,
· установим курсор в строку формул, введём функцию
· =тенденция (b2:e2;b1:e1; f1:h1;1),
· нажмём сочетание клавиш Ctrl+Shift+Enter,
· нажмём кнопку Остановить запись на панели Останов.
Теперь при нажатии сочетания клавиш Ctrl+т выполнится макрос Тенденция и поместит в ячейки F2...H2 результат:
17,2 | 20,4 | 23,6 |
Макрос можно запустить также, выбрав в меню Сервис\Макрос\ Макросы имя макроса Тенденция и нажав клавишу Выполнить.
Примечания:
1 Если в окне Запись макроса в поле Сочетание клавиш Ctrl+ не вводить букву, то макрос можно запустить только из меню Сервис.
2 Формулы можно вводить строчными буквами, т.к. их имена являются ключевыми для Excel и процессор распознаёт их автоматически. Адреса ячеек можно вводить строчными буквами, но обязательно латинским шрифтом.
3 Для прерывания выполнения макроса нужно нажать кнопку Esc.
Относительная адресация
В примере 1 использованы абсолютные ссылки на адреса ячеек, поэтому, чтобы использовать макрос «Тенденция» для других данных, их нужно предварительно занести в эти же ячейки B1:H1 и B2:E2.
Чтобы с помощью макроса обрабатывать произвольные ячейки, следует записать его с относительными ссылками. Для этого при записи макроса нажмите кнопку Относительная ссылка на панели инструментов Остановка записи и введите формулу
=ТЕНДЕНЦИЯ($B$2:$E$2;$B$1:$E$1;$F$1:$H$1;1).
Теперь можно обрабатывать этим макросом данные в произвольном блоке ячеек, равном по размеру исходному (B1:H2), но смещенному относи-тельно него на несколько ячеек по вертикали и горизонтали. Если зафикси-ровать адресацию столбцов, убрав знак ”$” перед буквами в адресах ячеек (=ТЕНДЕНЦИЯ(B$2:E$2;B$1:E$1;F$1:H$1;1), то перемещать блок можно только по столбцам. Если убрать знак ”$” только перед цифрами, то блок можно перемещать по строкам. Кнопку Относительная ссылка при этом нужно отжать.
Назначение сочетания клавиш для запуска макроса:
Если при записи макроса ему не было назначено сочетание запускающих клавиш, их можно ввести позже следующим образом:
1 В меню Сервис установите указатель на пункт Макрос и выберите команду Макросы.
2 В поле Имя макроса введите имя того макроса, которому нужно присвоить сочетание клавиш, с помощью которых он будет выполняться.
3 Нажмите кнопку Параметры.
4 Введите соответствующую букву в поле Сочетание клавиш. Заданное сочетание клавиш будет заменять любое установленное по умолчанию в Microsoft Excel, пока книга, содержащая данный макрос, открыта.
5 Нажмите кнопку OK.