Макрос с относительными ссылками
В приведенном примере при вызове макроса заполняется именно диапазон ячеек А1:А10, и никакой другой. В данном случае заполняемый диапазон ячеек не зависит от того, какая ячейка активна на момент запуска макроса. Таким образом, ссылка на указанный диапазон является абсолютной. Это обстоятельство существенно ограничивает возможности применения данного макроса и иногда бывает полезно при создании макроса использовать не абсолютные, а относительные ссылки.
В MS Excel такая возможность предусмотрена. Для того чтобы ссылки на ячейки или диапазоны интерпретировались как относительные, в группе Кодпри записи макроса следует предварительно щелкнуть на кнопке . В частности, если эта кнопка отображается нажатой, то все ссылки в процессе записи интерпретируются как относительные. Если щелкнуть на ней еще раз ссылки будут интерпретироваться как абсолютные. В процессе записи макроса можно неоднократно щелкать на этой кнопке, помещая в макрос как абсолютные, так и относительные ссылки.
Ниже эта особенность манипулирования ссылками будет использована для того, чтобы создать макрос, с помощью которого в диапазон ячеек, начиная с выбранной при запуске макроса, будут заноситься натуральные числа от 1 до 10, затем активизируется ячейка В1.
Сам процесс создания подобного макроса практически ничем не отличается от предыдущего случая (следует только учесть особенности использования относительных и абсолютных ссылок). Ниже перечислены основные этапы создания данного макроса и подчеркнуты те моменты, на которые следует обратить внимание.
ПРИМЕЧАНИЕ. Удобно создавать данный макрос в той же книге, где был создан предыдущий макрос. Для его записи можно, например, перейти к новому рабочему листу.
1. Выберите вкладку Разработчик – группа Код – Запись макроса. В открывшемся диалоговом окне Запись макроса укажите имя макроса (можно что-то вроде Му_Масrо_2). Комментарий большого значения не имеет, а вот в качестве «горячей» комбинации клавиш целесообразно указать <Ctrl+Shift+В> — для этого достаточно в поле Сочетание клавиш: ввести курсор и нажать клавишу <В> на клавиатуре. При этом в соответствующем поле отображается строчная литера. Таким образом, для запуска макроса, заполняющего числами ячейки диапазона А1:А10,можно нажать комбинацию <Ctrl+Shift+В>.
2. Сразу же следует в группе Код кликнуть на кнопку , включив тем самым режим использования относительных ссылок.
3. После этого в ячейку А1 вводится число 1, в ячейку А2 — число 2, диапазон А1 :А2 выделяется и расширяется до А1 :А10.
4. Все, что осталось, — это щелкнуть мышью в ячейке B1, сделав ее тем самым активной.
5. В завершение записи макроса щелкните на кнопке останова записи, на панели Остановка записи.Макрос готов к использованию.
ПРИМЕЧАНИЕ. Все это лучше делать на чистом рабочем листе. Если трех рабочих листов книги, предлагаемых по умолчанию для работы, недостаточно, можно добавить еще один рабочий лист. Это делается посредством нажатия на кнопку (слева внизу окна Excel) или комбинацией клавиш <Shift + F11>.
Проверить работу макроса можно, выделив какую-то ячейку в рабочем листе, отличную от A1, и нажав <Ctrl+Shift+В>. В результате чего диапазон из десяти ячеек, начиная с активной на момент запуска макроса, будет заполнен последовательными натуральными числами от 1 до 10, активной станет ячейка B1.