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