Рубрикатор
|
Автоматическая запись макросаМакрорекордерЗапись макроса - это очень полезная штука, которую придумал Microsoft. Вот например, Вы постоянно выполняете одну и ту же работу в книге Excel, и это вам уже надоело. Вот бы придумать такую штуку чтобы один раз показал как делается, а потом всё само на автомате, нажал кнопочку и сидишь такой довольный косынку раскладываешь, а программа сама работает. Вот именно это и придумали в Microsoft, только назвали всё это дело - Запись макроса. Хорошо, что некоторые уже поняли о чём идёт речь. Так давай те же посмотрим что это такое и как им поскорее научиться пользоваться. Запись макроса можно включить двумя способами: 2 - это нажимаем пиктограмму в нижнем левом углу окна книги: После нажатия на Запись макроса должно открыться окно, в котором можно будет указать имя макроса, сочетание клавишь для его срабатывания, поле в котором можно указать, где необходимо сохранить этот макрос и его описание. Имя макроса - как всегда пишем латинскими буквами, можно добавить цифры (о том, как можно называть макросы рассказывалось тут). Заполняете поля и нажимаете кнопку ОК. После этого происходит запись макроса, т.е. всё то, что вы будете писать в книге, производить заливку ячеек и т.п. у Вас будет записываться. Или нажав на пиктограмму в левом нижнем углу книги Существует два вида записи макросов - это запись с прямыми ссылками и запись с относительными ссылками. Запись макроса с прямыми ссылкамиЗапись макроса с прямыми ссылками означает, что все наши действия, которые мы записали, точно так же повторятся при воспроизведении макроса. Например, мы нажали Запись макроса и записали в ячейку А1 слово "Привет", в ячейку В1 "Пока", а в ячейку С1 "Привет". После этого остановили запись. Потом нажали выполнение записанного макроса, перед этим очистив ячеки и убрав курсор на совершенно другую ячйку, и у нас снова в Ячеке А1 появилось слово "Привет", в ячейке В1 "Пока", а в ячейке С1 "Привет". И куда бы мы не перемещли курсор и как бы мы не запускали макрос у нас запись будет производиться только в ячейках A1, B1 и C1. При такой записи макрорекордер записывает абсолютно все действия, которые вы выполняете в ходе записи макроса, включая даже то действие, как вы дёргаете за линейку прокрутки. В окне VB выглядеть это будет, например, так: Sub PrivetPoka() ' ' PrivetPoka Макрос '
' Range("A1").Select ActiveCell.FormulaR1C1 = "Привет" Range("B1").Select ActiveCell.FormulaR1C1 = "Пока" Range("C1").Select ActiveCell.FormulaR1C1 = "Привет" End Sub На этом примере видно, что первоначально у нас происходит выделение ячейки и только потом занесение в неё текста. Поэтому, как бы мы не старались выполнять макрос на других ячейках и занести в них текст, у нас ничего не выйдёт, всё равно будет записываться в тех ячейках, в которых мы заносили текст при выполнении записи макроса. Об этом ярко выражено демонстрируют прямые ссылки (Range("A1").Select, Range("B1").Select, Range("C1").Select) в коде примера. Вот это и называется запись прямыми ссылками, когда чётко указаны адреса и значения всего происходящего. Запись макроса с относительными ссылкамиЗапись макроса с относительными ссылками происходит немного подругому. Если для того, чтобы макрорекордер записывал прямые ссылки никаких дополнительных оперций производить не надо, кроме того как нажать кнопку запись макроса. То при записи относительными ссылками необходимо включить эту функцию и делается это нажатием на пиктограмму Относительные ссылки на вкладке Разработчик. При наведении на пиктограмму можно прочитать в подсказке суть этой записи. Но я всё таки попробую объяснить более подробней. Sub PrivetPoka() ' ' PrivetPoka Макрос '
' ActiveCell.FormulaR1C1 = "Привет" ActiveCell.Offset(0, 1).Range("A1").Select ActiveCell.FormulaR1C1 = "Пока" ActiveCell.Offset(0, 1).Range("A1").Select ActiveCell.FormulaR1C1 = "Привет" End Sub На этом примере видно, что тут нет никаких прямых ссылок, все ссылки строятся относитель первой ячейки, на которой была включена Запись макроса. Вот при такой записи макроса мы можем заносить данные куда угодно в такой же последовательности на любом месте листа, книги и т.д. Более подробно как происходит запись прямыми и относительными ссылками и чем они отличаются показано на видеоролике в начале этого урока.
|
Поиск
|
||